查看现有的重做日志
SQL> selectlg.GROUP#, lg.MEMBERS, lf.MEMBER
from v$log lg, v$logfile lf
where lg.GROUP# = lf.GROUP#
order by group#
/
2 3 4 5
GROUP# MEMBERS MEMBER
-------------------- ----------------------------------------
1 1 /u01/oracle/oradata/dipdb/redo01.log
2 1 /u01/oracle/oradata/dipdb/redo02.log
3 1 /u01/oracle/oradata/dipdb/redo03.log
4 1 /u01/oracle/oradata/dipdb/redo04.log
5 1 /u01/oracle/oradata/dipdb/redo05.log
6 1 /u01/oracle/oradata/dipdb/redo06.log
6 rows selected.
SQL>
添加一个重做日志
alter database addlogfile member '/u01/oracle/oradata/dipdb/redo01b.log' to group 1;
再查询一次
SQL> selectlg.GROUP#, lg.MEMBERS, lf.MEMBER ,lg.BYTES
from v$log lg, v$logfile lf
where lg.GROUP# = lf.GROUP#
order by group#
/
2 3 4 5
GROUP# MEMBERSMEMBER BYTES
-------------------- ---------------------------------------- ----------
1 2/u01/oracle/oradata/dipdb/redo01.log 52428800
1 2/u01/oracle/oradata/dipdb/redo01b.log 52428800
2 1/u01/oracle/oradata/dipdb/redo02.log 52428800
3 1/u01/oracle/oradata/dipdb/redo03.log 52428800
4 1/u01/oracle/oradata/dipdb/redo04.log 524288000
5 1/u01/oracle/oradata/dipdb/redo05.log 524288000
6 1/u01/oracle/oradata/dipdb/redo06.log 524288000
7 rows selected.
SQL>
可以通过查看status和sequence#来看日志当前情况和未来趋势
SQL> selectgroup#,sequence#,status from v$log;
GROUP# SEQUENCE# STATUS
-------------------- ----------------
1 53101INACTIVE
2 53102INACTIVE
3 53100INACTIVE
4 53103INACTIVE
5 53104INACTIVE
6 53105CURRENT
6 rows selected.
这里我们重点需要理解INACTIVE、ACTIVE、和CURRENT三种status的区别
首先我们需要了解检查点(CHECKPOINT和实例恢复)