您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > Oracle DBA 学期总结
一、简要介绍ORACLE的基本知识,以及做为DBA需要哪些技能和素质。Oracle整体的认识。1、物理结构(由控制文件、数据文件、重做日志文件、参数文件、归档文件、口令文件组成)一个数据库中的数据存储在磁盘上物理文件,被使用时,调入内存。其中控制文件、数据文件、重做日志文件、跟踪文件及警告日志(tracefiles,alertfiles)属于数据库文件;参数文件(parameterfile)口令文件(passwordfile)是非数据库文件1.1数据文件:存储数据的文件.数据文件典型地代表了根据他们使用的磁盘空间和数量所决定的一个Oracle数据库的容积。由于性能原因,每一种类型的数据放在相应的一个或一系列文件中,将这些文件放在不同的磁盘中。1.2控制文件:包含维护和验证数据库完整性的必要信息、例如,控制文件用于识别数据文件和重做日志文件,一个数据库至少需要一个控制文件.控制文件内容。数据库名。表空间信息。所有数据文件的名字和位置。所有redo日志文件的名字和位置。当前的日志序列号。检查点信息。关于redo日志和归档的当前状态信息控制文件的使用过程控制文件把Oracle引导到数据库文件的其它部分。启动一个实例时,Oracle从参数文件中读取控制文件的名字和位置。安装数据库时,Oracle打开控制文件。最终打开数据库时,Oracle从控制文件中读取数据文件的列表并打开其中的每个文件。1.3重做日志文件:含对数据库所做的更改记录,这样万一出现故障可以启用数据恢复。一个数据库至少需要两个重做日志文件.1.4跟踪文件及警告日志(TraceFilesandAlertFiles)在instance中运行的每一个后台进程都有一个跟踪文件(tracefile)与之相连。Tracefile记载后台进程所遇到的重大事件的信息。警告日志(AlertLog)是一种特殊的跟踪文件,每个数据库都有一个跟踪文件,同步记载数据库的消息和错误.1.5参数文件:包括大量影响Oracle数据库实例功能的设定,如以下设定:。数据库控制文件的定位。Oracle用来缓存从磁盘上读取的数据的内存数量。默认的优化程序的选择和数据库文件相关,执行两个重要的功能1〉为数据库指出控制文件2〉为数据库指出归档日志的目标1.6归档文件:是重做日志文件的脱机副本,这些副本可能对于从介质失败中进行恢复很必要。1.7口令文件:认证哪些用户有权限启动和关闭Oracle例程.2、逻辑结构(表空间、段、区、块)表空间:是数据库中的基本逻辑结构,一系列数据文件的集合。段:是对象在数据库中占用的空间.区:是为数据一次性预留的一个较大的存储空间.块:ORACLE最基本的存储单位,在建立数据库的时候指定.3、内存分配(SGA和PGA)SGA:是用于存储数据库信息的内存区,该信息为数据库进程所共享。它包含Oracle服务器的数据和控制信息,它是在Oracle服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。PGA:包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA正相反,PGA是只被一个进程使用的区域,PGA在创建进程时分配,在终止进程时回收.4、后台进程包括数据写进程(DatabaseWriter,DBWR)、日志写进程(LogWriter,LGWR)、系统监控(SystemMonitor,SMON)、进程监控(ProcessMonitor,PMON)、检查点进程(CheckpointProcess,CKPT)、归档进程、服务进程、用户进程)数据写进程:负责将更改的数据从数据库缓冲区高速缓存写入数据文件日志写进程:将重做日志缓冲区中的更改写入在线重做日志文件系统监控:检查数据库的一致性如有必要还会在数据库打开时启动数据库的恢复进程监控:负责在一个Oracle进程失败时清理资源检查点进程:负责在每当缓冲区高速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件中的数据库状态信息。该进程在检查点出现时,对全部数据文件的标题进行修改,指示该检查点。在通常的情况下,该任务由LGWR执行。然而,如果检查点明显地降低系统性能时,可使CKPT进程运行,将原来由LGWR进程执行的检查点的工作分离出来,由CKPT进程实现。对于许多应用情况,CKPT进程是不必要的。只有当数据库有许多数据文件,LGWR在检查点时明显地降低性能才使CKPT运行。CKPT进程不将块写入磁盘,该工作是由DBWR完成的。init.ora文件中CHECKPOINT_PROCESS参数控制CKPT进程的使能或使不能。缺省时为FALSE,即为使不能。归档进程:在每次日志切换时把已满的日志组进行备份或归档服务进程:用户进程服务。用户进程:在客户端,负责将用户的SQL语句传递给服务进程,并从服务器段拿回查询数据。5、SCN(SystemChangeNumber):系统改变号,一个由系统内部维护的序列号。当系统需要更新的时候自动增加,他是系统中维持数据的一致性和顺序恢复的重要标志。有几个层次的1.日常操作2.错误处理3.数据库优化4.数据库设计5.数据库解决方案设计一个合格的dba应该具备如下技能:1、熟练操作各种SQL语句2、熟悉数据库中权限和用户的管理,具备一定的网络安全知识3、具备数据库恢复、备份技巧4、对数据库系统所在的操作系统有一定的认识和管理能力,因为数据库系统是不能脱离操作系统独立运行的。数据库的体系结构后台程序的工作原理SMON(系统监控程序)进程执行所需的实例恢复操作(使用联机重做日志文件),它也可以清除数据库,消除系统不再需要的事务对象,还可以将连续的自由空间合成一个大的自由空间,SMON只合并表空间中的空闲空间,这些表空间的默认pctincrease存储值为0PMON(进程监控程序)后台进程清除失败的用户进程,释放用户当时正在使用的资源,同SMON一样,PMON周期性地唤醒检测它是否需要被使用。DBWR(数据库写入程序)后台进程负责管理数据块缓冲区及字典缓存区的内容,它以批量写入的方式将修改块从SGA写到数据文件中.当缓冲区中的一缓冲区被修改,它被标志为“弄脏”,DBWR的主区的缓冲区填入数据库或被用户进程弄脏,未用的缓冲区的数目减少。当未用的缓冲区下降到很少,以致用户进程要从磁盘读入块到内存存储区时无法找到未用的缓冲区时,DBWR将管理缓冲存储区,使用户进程总可得到未用的缓冲区。ORACLE采用LRU(LEASTRECENTLYUSED)算法(最近最少使用算法)保持内存中的数据块是最近使用的,使I/O最小。LGWR(日志写程序)后台进程负责把联机重做日志缓冲区的内容写入联机重做日志文件,LGWR分批将日志条目写入联机重做日志文件,重做日志缓冲区条目总是包含着数据库的最新状态,这是因为将数据块缓冲区中的修改数据块写入到数据文件中之前,DBWR进程将一直处于等待状态二、将本学期的自己历次上机作业整理并提交。包括自己研究的实验记录(所遇到的问题、解决的办法,未解决的实验等)。开机的步骤,遇到的问题、解决的办法(参数文件的配置与管理)在无法加载错误文件的时侯,我们可以选择就其设置为脱机,然后直接打开数据库。验证oracle启动顺序1、如果删除spfile,启动oracle2、如果删除pfile,启动oracle3、initSID.ora,init.ora,spfileSID,pfileSID的关系。init.ora是一个模版文件,当有了一个数据库的时候它会根据我们的数据库配置自动生成一个叫做initSID.ora的文件。启动到nomount阶段时,首先要查找参数文件(顺序为先查找spfile$sid.ora,没有查到就查找init$sid.ora,再没有查到就查找init.ora)。4、oradim-startup-sidorcl和lsnrctlstartNomount打开控制文件,可以用来创建数据库的状态,可以执行creatMount是用来维护数据库的,比如数据库出现了问题,文件被误删就无法open这是可以在mount的状态下将数据库文件从高数据库文件里除去Open是数据库可以对全体用户提供服务StartupnomountMountopenselectaddr,pid,spid,username,program??fromv$process;:可以和v$session的paddr字段关联Pidoracl进程identifilerSpid操作系统的进程identfilerUsername操作系统的用户名而不是oracl的用户名Program进程正在执行的的程序查看数据库的状态:selectstatusfromv$instance;受限制性的设置只读:Shutdownimmediate;Startupmount;Alterdatabaseopenreadonly;查看数据库的名字表空间所占的空间大小查看表空间的名称及大小查看后台进程:查看控制文件:通过修该profile复用控制文件控制文件复制备份控制文件(1)列出现有日志文件的位置和名称;显示数据库所拥有的重做日志文件组号、成员的数量和日志文件的大小(2)说明当前日志组号和最大日志序号。进行手工日志切换,重新说明当前日志组号和最大日志序号。(3)在E盘增加新的日志组,其中包含两个成员,大小为1M。(4)向新增的日志组增加第3个成员,大小为1M。(他)删除新组的第一个成员。(6)将新增加的组移动到同其它日志组相同的目录下。(7)删除新增加的日志组。日志切换多个表空间的优势:1.能够将数据字典与用户数据分离出来,避免由于字典对象和用户对象保存在同一个数据文件中而产生的I/O冲突2.能够将回退数据与用户数据分离出来,避免由于硬盘损坏而导致永久性的数据丢失3.能够将表空间的数据文件分散保存到不同的硬盘上,平均分布物理I/O操作4.能够将某个表空间设置为脱机状态或联机状态,以便对数据库的一部分进行备份和恢复5.能够将某个表空间设置为只读状态,从而将数据库的一部分设置为只读状态6.能够为某种特殊用途专门设置一个表空间,比如临时表空间等,以优化表空间的使用效率7.能够更佳灵活的为用户设置表空间限额SYSTEM表空间内存储:1.数据库的数据字典2.所有PL/SQL程序的源代码和解析代码3.数据库对象的定义所有表空间的数据文件总和不能超过创建数据库时指定的maxdatafiles参数的限制本地管理表空间:1.在存储分配过程中不需要访问数据库,可以提高存储分配操作的速度2.能够避免在表空间的存储管理操作中产生的递归现象3.不会产生重做和撤销记录4.简化DBA对表空间的管理操作5.降低用户对数据字典的依赖性字典管理方式的表空间:表空间中所有存储空间的管理信息都保存在数据字典中,在进行存储空间管理时会产生回退和重做记录本地管理方式的表空间:表空间中所有存储空间的管理信息都保存在数据文件头部的位图中在9i中创建表空间默认就是本地管理方式.8i以前的版本,只能用字典管理方式的表空间.创建表空间创建还原表空间查看表空间信息创建临时表空间(字典管理方式)一个临时表空间可以被多个数据库用户共享,oracle只会为一个实例创建一个临时段,这个临时段被实例中所有的排序操作共享使用,但是临时段中的每一个区只能由一个事务使用.临时段在数据库启动后执行第一次排序操作时被创建.注意:字典管理方式的临时表空间可以象普通表空间那样使用altertablespace来进行更改建议将initial和next参数设置成相同的值,并且应当是初始化参数sort_area_size和db_block_size两个值之和的整数倍,pctincrease参数应当设置成0改变表空间的可用性:1.altertablespaceuser01offlinenormal(正常方式)oracle会执行一次检查点,将SGA区中与该表空间相关的脏缓存块都写入数据文件中,然后再关闭表空间对应的数据文件,下一次将表空间恢复为联机状态时,不需要进行数据库恢复.2.altertablespaceuser01off
本文标题:Oracle DBA 学期总结
链接地址:https://www.777doc.com/doc-5087769 .html