您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > TP5-1 日志文件管理
第五章日志文件管理日志文件用于记录数据库改变的信息。在SGA区中重做日志缓冲区的数据由LGWR进程来写到日志文件中。一般在数据库建立后,至少有两个或三个日志文件。正常下有三个日志文件都在工作。工作的顺序是:LGWR首先将数据到第一个,当第一个写满后接着写第二个,第二个写满后,开始写第三个。当第三个写满后,重新开始写第一个。5.1日志切换当一个当前的日志完全填满且下一个必须写时,日志切换总是必须出现。强行的日志切换Altersystemswitchlogfile;5.1日志切换__检查点Oracle为了在出现故障后能退回去重演原来的信息,就需要一个叫开始点。在这个开始点时刻,数据和事务是已知的。在Oracle里,只要检查点一到(出现)。Oracle就强行将当前的SGA中的redo区的改动过的块写入重做日志文件中。5.1日志切换__检查点Oracle在INITsid.ORA文件中给出LOG_CHECKPOINT_INTERVAL参数可以设置检测点的数目日志文件大小为1000块,而设置检查点间隔LOG_CHECKPOINT_INTERVAL为250,则文件写达到1/4、2/4、3/4及4/4时产生检测点(250块、500块、750块和1000块处)。日志文件的切换_日志查询查日志文件大小SQLselectgroup#,bytesfromv$log;查看日志检查点数目SQLshowparameterlog_checkpoint_interval5.2建立多个日志文件可以在Oracle内建立多个组,每个组包括一个或多个日志文件(每个日志文件由Oracle给出一个组编号)每个组太多的日志文件会影响系统性能。5.2建立多个日志文件——建立日志建立组内多个日志文件的语法:ALTERDATABASE[database_name]ADDLOGFILE[GROUP[group_number]](filename,filename[,...])[SIZEsize_integer[K|M]][REUSE]5.2建立多个日志文件——创建日志ALTERDATABASEADDLOGFILEGROUP6(E:\DATABASE\log6a.ora,F:\DATABASE\log6b.ora)size10m;ALTERDATABASEADDLOGFILEGROUP5(E:\DATABASE\log5a.ora,F:\DATABASE\log5b.ora)REUSE;5.2建立多个日志文件——创建日志例2:建立一个新组3,组内有两个成员:ALTERDATABASEADDLOGFILEGROUP3('/ora02/oradata/mydb01/redo0301.log','/ora03/oradata/mydb01/redo0402.log')size10m;5.2建立多个日志文件——创建日志例3:建立一个新组,如果省去GROUP3,Oracle就自动分配一新的有效的组号:ALTERDATABASEADDLOGFILE('/ora02/oradata/mydb01/redo0301.log','/ora03/oradata/mydb01/redo0402.log')size10m;ALTERDATABASEADDLOGFILE('D:\ORACLE\ORADATA\ORA816\REDO41.log','D:\ORACLE\ORADATA\ORA816\REDO42.log')size1m;5.2建立多个日志文件—创建日志例4:在一个组内加新成员,不用给出大小,系统自动按照组内的大小分配:ALTERDATABASEADDLOGFILEMEMBER'/ora04/oradata/mydb01/redo0403.log'TOGROUP2;5.3重新命名日志成员名字1.关闭数据库,并进行完全备份;2.使用操作系统命令拷贝原来的日志文件到新的地方;3.用startupmount启动数据库;4.用ALTERDATABASERENAMEFILE'old_redo_file_name'TO'new_redo_file_name';5.用ALTERDATABASEOPEN打开数据库;6.备份控制文件。5.4删除重做日志文件——删除条件1.删除一个日志组后,系统中至少还有两个其它的日志组;2.被删除的日志组必须是不需要存档;3.不是正在使用的日志组。5.4删除重做日志文件删除日志文件的语法:ALTERDATABASEdatabase_nameDROPLOGFILEGROUPgroup_number|file_name|(file_name,file_name(,...))删除日志成员的语法:ALTERDATABASEdatabase_nameDROPLOGFILEMEMBERfile_name;5.4删除重做日志文件——替换日志文件当一个重做日志组偶而被损坏使数据库不能继续使用时,不能直接删除它们,而是要用一个干净的文件或一组成员去替代这个损坏的日志组。ALTERDATABASEdatabase_nameCLEAR[UNARCHIVED]LOGFILEgroup_identifier[UNRECOVERABLEDATAFILE]如果该文件正在等待存档(归档模式),就需要UNARCHIVED。如果需要脱机恢复一个数据文件,就用UNRECOVERABLEDATAFILE。5.4删除重做日志文件——日志查询V$LOGFILEV$LOGV$THREADV$LOG_HISTORY5.4删除重做日志文件删除一个组3:ALTERDATABASEDROPLOGFILEGROUP3;删除一个成员:ALTERDATABASEDROPLOGFILEMEMBER'/orant/oradata'mydb02'redo02.log';
本文标题:TP5-1 日志文件管理
链接地址:https://www.777doc.com/doc-3368217 .html