RAC下丢失inactive logfile的恢复


(1)手动模拟删除onlinelog状态为inactive。

SQL> select * from v$log;

SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel

检查alert文件:

Errors in file /u01/app/Oracle/admin/RACDB/bdump/racdb1_lgwr_24441.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '+RAC_DISK/racdb/onlinelog/group_1.260.795090071'
ORA-17503: ksfdopn:2 Failed to open file +RAC_DISK/racdb/onlinelog/group_1.260.795090071
ORA-15012: ASM file '+RAC_DISK/racdb/onlinelog/group_1.260.795090071' does not exist
ORA-00312: online log 1 thread 1: '+RAC_DISK/racdb/onlinelog/group_1.261.795090069'
ORA-17503: ksfdopn:2 Failed to open file +RAC_DISK/racdb/onlinelog/group_1.261.795090069
ORA-15012: ASM file '+RAC_DISK/racdb/onlinelog/group_1.261.795090069' does not exist
Thu Sep 27 11:08:00 2012
ARC0: STARTING ARCH PROCESSES
Thu Sep 27 11:08:00 2012
Errors in file /u01/app/oracle/admin/RACDB/udump/racdb1_ora_24735.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '+RAC_DISK/racdb/onlinelog/group_1.261.795090069'
ORA-00312: online log 1 thread 1: '+RAC_DISK/racdb/onlinelog/group_1.260.795090071'
报错中显示找不到onlinelog。

(2)由于onlinelog必须存在2个组,所以先增加新GROUP,再删除丢失的GROUP。

SQL> alter database add logfile thread 1 group 5;

SQL> alter database drop logfile group 1;

SQL> alter database open;

SQL> alter system switch logfile;

相关内容