1. 概述
重做日志文件记录数据所有的修改信息并提供一种数据库失败时的恢复机制。
重做日志文件分组管理
一个oracle数据库要求至少有两组重做日志文件
组中每个日志文件被称作一个组成员
2. 重做日志文件工作模式
重做日志文件循环使用
当一个重做日志文件充满时,LGWR将日志写入到下一个重做日志组
这个被叫做日志切换
检查点执行动作被触发
相关信息写入控制文件
3. 重做日志文件的手工切换命令
alter system switch logfile;
4. 获取日志组及成员信息
SQL> select * from v$log;
SQL> select * from v$logfile;
5. 练习:添加日志文件组
第一步:查看日志组及成员信息
SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC
---------- ---------- ---------- ---------- ---------- ---------- ---
STATUS FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME CON_ID
---------------- ------------- --------- ------------ --------- ----------
1 1 4 209715200 512 1 NO
INACTIVE 1521128 23-JUN-19 1559972 23-JUN-19 0
2 1 5 209715200 512 1 NO
INACTIVE 1559972 23-JUN-19 1666744 30-JUN-19 0
3 1 6 209715200 512 1 NO
CURRENT 1666744 30-JUN-19 1.8447E+19 0
SQL> select * from v$logfile;
GROUP# STATUS TYPE
---------- ------- -------
MEMBER
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
IS_ CON_ID
--- ----------
3 ONLINE
/u01/app/oracle/oradata/orcl/redo03.log
NO 0
2 ONLINE
/u01/app/oracle/oradata/orcl/redo02.log
NO 0
1 ONLINE
/u01/app/oracle/oradata/orcl/redo01.log
NO 0
第二步:添加日志文件组
SQL> alter database add logfile group 4 '/u01/app/oracle/oradata/orcl/redo04.log' size 200M;
SQL> alter database add logfile group 5 '/u01/app/oracle/oradata/orcl/redo05.log' size 200M;
SQL> alter database add logfile group 6 '/u01/app/oracle/oradata/orcl/redo06.log' size 200M;
5. 练习:删除日志文件组
SQL> alter database drop logfile group 4;
SQL> alter database drop logfile group 5;
SQL> alter database drop logfile group 6;