您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 1.Oracle DBA_管理基础
1Oracle10g培训教程课程介绍本课程对应的产品版本为:Oracle10.2.0.1.0课程目标掌握ORACLE数据库系统结构中物理结构、系统全局区掌握ORACLE数据库的存储管理知识掌握管理ORACLE数据库的基本概念掌握ORACLE数据库的网络应用掌握Oracle用户管理,数据备份与还原方法。相关资料ORACLE公司发布的相关资料。23基础篇•Oracle产品概述•Oracle系统结构•Oracle存储管理管理篇•基本概念•网络应用•用户管理•备份与恢复•常用示例45Oracle10g基础篇数据库技术产生于60年代末70年代初,到现在比较知名的大型数据库系统有ORACLE、Sybase、Informix、DB2(IBM公司的)、Ingress、RDB、SQLServer等。ORACLE公司于1979年,首先推出基于SQL标准的关系数据库产品,可以在100多种硬件平台上运行(包括微机、工作站、小型机、中型机和大型机),支持多种操作系统。1986年,ORACLE推出具有分布式结构的版本5,可将数据和应用驻留在多台计算机上,而相互间的通信是透明的。1988年,推出版本6(V6.0)可带事务处理选项,提高了事务处理的速度。1992年推出了版本7,可带过程数据库选项、分布式数据库选项和并行服务器选项,称为ORACLE7数据库管理系统,它释放出了开放的关系型系统的真正潜力。目前,新版本为ORACLE11g,通用版本为ORACLE10g。6版本Oracle10g是在企业内和因特网上开发、布署和管理应用高移动性和可伸缩性的数据库。Oracle10g最主要的新特性是支持网格计算,即多台结点服务器利用高速网络组成一个虚拟的高性能服务器,负载在整个网格中衡,按需增删结点,避免单点故障,在数据库中包括Java和因特网能力。Oracle10g还包括能够内存自动化,根据需要自动分配和释放系统内存。Oracle10g还包括数据泵高速导入、导出数据。ORACLE10g是一种通用叫法,它包括许多更细版本,如ORACLE10.2.0、ORACLE10.2.1、ORACLE10.2.7,78Oracle10g基础篇9物理结构•数据文件•日志文件•控制文件•参数文件系统全局区(SGA)•共享池•数据缓冲区•日志缓冲区•字典缓冲区进程•用户进程•服务器进程•后台进程Oracle10数据库体系结构ORACLE数据库有一个物理结构和一个逻辑结构。数据库物理结构是由构成数据库的操作系统文件所决定。每一个ORACLE数据库是由四种类型的文件组成:数据文件、日志文件、控制文件和参数文件。数据库的文件为数据库信息提供真正的物理存储。数据文件是物理存储ORACLE数据库数据的文件,每一个ORACLE数据库有一个或多个物理的数据文件(datafile)。一个数据库的所有数据文件包含了全部数据库数据。逻辑数据库结构(如表、索引)的数据物理地存储在数据库的数据文件中。1112数据文件有下列特征:存储数据库数据的文件数据文件大小可以修改每一个数据文件只与一个数据库联系一个表空间可包含一个或多个数据文件131.查询系统使用的是哪一组日志文件:select*fromv$log;2.查询正在使用的组所对应的日志文件:select*fromv$logfile;4.查询历史日志:select*fromv$log_history;5.查询日志的归档模式:selectdbid,name,created,log_modefromv$database;6.查询归档日志的信息:selectrecid,stamp,thread#,sequence#,namefromv$archived_log;SQLarchiveloglist14RedoLog文件记录对于数据库的所有修改,用于数据库的恢复Oracle运行NOARCHIVELOG时只有历史日志,没有归档日志每一个数据库有两个或多个日志文件(redologfile)的组,每一个日志文件组用于收集数据库日志。日志的主要功能是记录对数据所做的修改,所以对数据库做的全部修改是记录在日志中。日志文件的主要作用是保护数据库以防止故障。为了防止日志文件本身的故障,ORACLE允许镜象日志(mirroredredolog),可以在不同磁盘上维护两个或多个日志副本。日志文件中的信息仅在系统故障或介质故障时用来恢复数据库。15服务器参数参数spfileServerParameterFile文本参数pfileParameterFile参数文件(ParameterFiles)1.获取参数文件信息SQLshowparameterspfileNAMETYPEVALUE-----------------------------------------------------------------------------spfilestring/u01/app/oracle/product/10.2.0.1.0/dbs/spfiletest1.ora2.使用createpfile命令将二进制的spfile导出为pfile文件SQLcreatepfile='/tmp/pfile.ora'fromspfile;17参数文件(ParameterFiles)控制文件是描述数据库结构的二进制文件控制文件所有必须的数据文件和日志文件在控制文件中标识数据库名存储在控制文件中控制文件用于打开和存取数据库数据库恢复所需的同步信息存储在控制文件中控制文件数据库的物理组成与控制文件中的记录不同时,系统则不能正常启动或发生down机现象18建议设置:至少使用两个控制文件,并存放于不同磁盘参数Control_Files指明控制文件控制文件的镜像可以在数据库创建或创建完成后进行191.备份控制文件可以在运行时备份(1)SQLalterdatabasebackupcontrolfileto'd:\control.bak';(2)SQLalterdatabasebackupcontrolfiletotrace;翻译成创建控制文件的脚本保存在d:\oracle\admin\xq\udump\下SQLshowparameteruser_dump;查看SELECTSPIDFROMV$PROCESSWHEREADDR=(SELECTPADDRFROMV$SESSIONWHERESID=(SELECTSIDFROMV$MYSTATWHEREROWNUM=1));2.重建控制文件20SGA由多个部分组成:1:固定SGA(FixedSGA)2:数据缓冲区(Dbcache)3:重做日志缓冲区(Redologbuffer)4:共享池(Sharedpool)5:Java池(Javapool)6:大池(Largepool7:流池(Streampool)21SQLshowsgaTotalSystemGlobalArea285212672bytesFixedSize1218968bytesVariableSize117442152bytesDatabaseBuffers159383552bytesRedoBuffers7168000bytes22FixedSize:这部分是Oracle内部使用的一个区,Oracle通过这个区找到SGA其他区,类似一个SGA各个组件的索引,不同平台和不同版本下这部分的大小可能不一样。VariableSize:包括sharedpool,javapool,largepool,管理db_block_buffers的内存、管理控制文件信息的内存等等,DatabaseBuffers:数据缓冲区,sga_target=0手动SGA管理模式,如果是自动SGA管理(sga_target0),则这个值根据sga的分配情况自动进行调整。RedoBuffers:这部分是实际分配的Redologbuffer的大小,由初始化参数log_buffer根据SGA的最小分配单位granule向上取整得到。23DB数据缓冲区Dirtylist....LRUlist....DatafilesDatafiles数据缓冲区(DatabaseBufferCache)ServerDBWRSGAFree,Dirty,Pinned在数据高速缓冲区中存放着Oracle系统最近使用过的数据块(即用户的高速缓冲区),当把数据写入数据库时,它以数据块为单位进行读写,当数据高速缓冲区填满时,则系统自动去掉一些不常被用访问的数据。如果用户要查的数据不在数据高速缓冲区时,Oracle自动从磁盘中去读取。数据高速缓冲区包括三个类型的区:1)脏的区(DirtyBuffers):包含有已经改变过并需要写回数据文件的数据块。2)自由区(FreeBuffers):没有包含任何数据并可以再写入的区,Oracle可以从数据文件读数据块该区。3)保留区(PinnedBuffers):此区包含有正在处理的或者明确保留用作将来用的区。253重做日志缓冲区(Redologbuffer):数据写到重做日志文件之前在这里缓存,在以下情况中触发:每隔3秒缓存达到1MB或1/3满时用户提交时缓冲区的数据写入磁盘前26共享池是SGA中最重要的内存段之一。共享池太大和太小都会严重影响服务器性能。共享池包括:1.库缓冲(Librarycache)2.数据词典缓冲(Datadictionarycache)3.用户全局区(UGA)DatabasebuffercacheRedologbufferSharedpoolLibrarycacheDatadictionarycacheUserglobalarea1.大小由参数SHARED_POOL_SIZE确定2.库缓冲(Librarycache)含有SQL语句、分析码、执行计划。SQL和PL/SQL的解释计划、代码,数据字典数据等等都在这里缓存。3.数据字典缓冲(Datadictionarycache)含有从数据字典中得到的表、列定义、权限。4.UGA含有用户的MTS会话信息(Multi-ThreadedServer共享服务器)。LibrarycacheUGADatadictionarycache4Java池(Javapool):在数据库中运行Java代码时用到这部分内存。例如:编写Java存储过程在服务器内运行。需要注意的是,该内存与常见的Java编写的B/S系统并没关系。用JAVA语言代替PL/SQL语言在数据库中写存储过程才会用到这部分内存。5大池(Largepool):下面三种情况使用到大池:并行执行:存放进程间的消息缓冲区RMAN:某些情况下用于磁盘I/O缓冲区共享服务器模式:共享服务器模式下UGA在大池中分配(如果设置了大池)7.流池(streampool)从Oracle10g开始才增加的一个新的SGA结构。流池(或者如果没有配置流池,则是共享池中至多10%的空间)会用于缓存流进程在数据库间移动/复制数据时使用的队列消息。流池只对使用了流数据库特性的系统是重要的。在这些环境中,必须设置流池,以避免因为这个特性从共享池“窃取”10%的空间ORACLE实例有两种类型:单进程实例和多进程实例。通常用的是多进程实例。ORACLE系统进程又分为服务器进程和后台进程。服务器进程,用于处理用户请求的进程。处理过程如下:1.分析SQL命令并生成执行方案。2.从数据缓冲区或磁盘中读取数据。3.将执行结果返回给用户。后台进程,为所有数据库用户异步完成各种任务,主要包括如下进程(orafis表示实例名):ora_reco_orafis,ora_dbw0_orafis,ora_pmon_orafisora_lgwr_orafis,ora_ckpt_orafis30311.LinuxAs4.7安装Oracle10.2.1.0软件;2.找出控制文件位置,备份控制文件;3.找出Oracle运行进程;4.查找SGA分配情况3233Oracle10g基础篇341.逻辑结构2.表(Table)3
本文标题:1.Oracle DBA_管理基础
链接地址:https://www.777doc.com/doc-3682666 .html