恢复acitve日志组有两种情况
- 一种是acitve日志组的其中一个成员损坏
- 一种是acitve日志组所有日志成员都损坏
- 使用rman恢复acitve日志组的其中一个成员损坏
- 1、查看当前日志组状态以及日志组成员
sys@TEST1107> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC STATUS FIRST_CHANGE#
---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- -------------
FIRST_TIME NEXT_CHANGE# NEXT_TIME
------------------ ------------ ------------------
1 1 22 52428800 512 2 NO CURRENT 1153754
06-NOV-13 2.8147E+14
2 1 20 52428800 512 2 YES INACTIVE 1132964
06-NOV-13 1153041 06-NOV-13
3 1 21 52428800 512 2 YES ACTIVE 1153041
06-NOV-13 1153754 06-NOV-13
sys@TEST1107> select * from v$logfile;
GROUP# STATUS TYPE MEMBER IS_
---------- ------- ------- -------------------------------------------------- ---
3 ONLINE /u01/app/oracle/oradata/test1107/redo03.log NO
2 ONLINE /u01/app/oracle/oradata/test1107/redo02.log NO
1 ONLINE /u01/app/oracle/oradata/test1107/redo01.log NO
1 ONLINE /u01/app/oracle/oradata/test1107/redo01a.log NO
2 ONLINE /u01/app/oracle/oradata/test1107/redo02a.log NO
3 ONLINE /u01/app/oracle/oradata/test1107/redo03a.log NO
6 rows selected.
- 2. ACTIVE 组日志是第3组,OS下删除第三组的其中一个成员
[oracle@rtest ~]$ rm /u01/app/oracle/oradata/test1107/redo03.log
- 3、模拟断电,然后起库,数据库可正常打开
sys@TEST1107> shutdown abort
ORACLE instance shut down.
sys@TEST1107> startup
ORACLE instance started.
Total System Global Area 1269366784 bytes
Fixed Size 2227984 bytes
Variable Size 805306608 bytes
Database Buffers 452984832 bytes
Redo Buffers 8847360 bytes
Database mounted.
Database opened.
- 4、查看alert日志
Errors in file /u01/app/oracle/diag/rdbms/test1107/test1107/trace/test1107_lgwr_23973.trc:
ORA-00313: open failed for members of log group 3 of thread 1
ORA-00312: online log 3 thread 1: '/u01/app/oracle/oradata/test1107/redo03.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
- 5、查看数据库打开后的日志组以及日志成员状态,发现刚才删掉的那个日志成员的状态为INVALID