今天模拟INACTIVE的日志组丢失情况,遭遇 ORA-03113
SQL> select group#,archived,status from v$log; GROUP# ARC STATUS ---------- --- ---------------- 1 NO CURRENT 2 YES INACTIVE 3 YES INACTIVE SQL> select member from v$logfile where group#=3; MEMBER -------------------------------------------------------------------------------- /u01/app/oracle/oradata/xyhui11g/redo03.log
[oracle@xyhui trace]$ cd /u01/app/oracle/oradata/xyhui11g/ [oracle@xyhui xyhui11g]$ rm redo03.log
然后startup无法打开数据库。
处于INACTIVE状态,实例恢复已经不需要这个日志组。执行
SQL> startup mount ORACLE instance started. Total System Global Area 630501376 bytes Fixed Size 2215984 bytes Variable Size 473960400 bytes Database Buffers 150994944 bytes Redo Buffers 3330048 bytes Database mounted. SQL> alter database clear logfile group 3; Database altered. SQL> alter database open; Database altered. SQL> select group#,archived,status from v$log; GROUP# ARC STATUS ---------- --- ---------------- 1 NO CURRENT 2 YES INACTIVE 3 YES UNUSED SQL> exit
数据库成功打开。
查看告警日志里 错误都是ORA-00313 很奇怪 sqlplus里错误号是03113.网上搜这个错误号,好难琢磨 why?