ORA-03113: end-of-file on communication channel

今天模拟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?

posted @ 2012-12-03 16:54  xyhui  阅读(541)  评论(0编辑  收藏  举报