linux ora-00322,遇到ORA-03113 end-of-file on communication channel

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

打开数据库的时候报ORA-03113。

关于ORA-03113,ORACLE官方文档是这样描述的:

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

Cause: The connection between Client and Server process was broken.

Action: There was a communication error that requires further investigation. First, check for network problems and review the SQL*Net setup. Also, look in the alert.log file for any errors. Finally, test to see whether the server process is dead and whether a trace file was generated at failure time.

并没有明确的解决方法。

查看日志文件:

Wed May 13 21:22:55 2009

Errors in file /u01/admin/YSP/bdump/ysp_lgwr_2920.trc:

ORA-00322: log 1 of thread 1 is not current copy

ORA-00312: online log 1 thread 1: '/u01/oradata/YSP/redo01B.log'

关于ORA-00322,ORACLE官方是这样描述的:

ORA-00322: log string of thread string is not current copy

Cause: Check of log file header at database open found that an online log appears to be an incorrectly restored backup.

Action: Restore correct file or reset logs.

此时重建日志文件将会报错。

SQL> ALTER DATABASE CLEAR LOGFILE GROUP 1;

ALTER DATABASE CLEAR LOGFILE GROUP 1

*

ERROR at line 1:

ORA-00350: log 1 of instance YSP (thread 1) needs to be archived

ORA-00312: online log 1 thread 1: '/u01/oradata/YSP/redo01.log'

ORA-00312: online log 1 thread 1: '/u01/oradata/YSP/redo01B.log'

SQL> ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 1;

ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 1

*

ERROR at line 1:

ORA-00322: log 1 of thread 1 is not current copy

ORA-00312: online log 1 thread 1: '/u01/oradata/YSP/redo01B.log'

ORA-00322: log 1 of thread 1 is not current copy

ORA-00312: online log 1 thread 1: '/u01/oradata/YSP/redo01.log'

SQL> SELECT * FROM V$LOGFILE;

rows will be truncated

GROUP# STATUS  TYPE    MEMBER

---------- ------- ------- -----------------------------------------------------

1         ONLINE  /u01/oradata/YSP/redo01.log

3         ONLINE  /u01/oradata/YSP/redo03.log

2         ONLINE  /u01/oradata/YSP/redo02.log

1         ONLINE  /u01/oradata/YSP/redo01B.log

2         ONLINE  /u01/oradata/YSP/redo02B.log

3         ONLINE  /u01/oradata/YSP/redo03B.log

6 rows selected.

SQL> SELECT * FROM V$LOG;

truncating (as requested) before column FIRST_CHANGE#

GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS           FIRS

---------- ---------- ---------- ---------- ---------- --- ---------------- ----

1          1          0   15728640          2 NO  CLEARING_CURRENT 13-M

3          1         13   15728640          2 YES INACTIVE         13-M

2          1          0   15728640          2 YES UNUSED           13-M

由于数据处于MOUNT状态,因此日志切换不行。

SQL> ALTER SYSTEM SWITCH LOGFILE;

ALTER SYSTEM SWITCH LOGFILE

*

ERROR at line 1:

ORA-01109: database not open

测试打开数据库就会报ORA-03113

SQL> ALTER DATABASE OPEN;

ALTER DATABASE OPEN

*

ERROR at line 1:

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

而且数据库INSTANCE将会意外终止。

此时可以用基于CANCEL的不完全恢复。

SQL> CONN / AS SYSDBA

Connected to an idle instance.

SQL> STARTUP MOUNT;

ORACLE instance started.

Total System Global Area  167772160 bytes

Fixed Size                  1218316 bytes

Variable Size              79694068 bytes

Database Buffers           83886080 bytes

Redo Buffers                2973696 bytes

Database mounted.

SQL> select * from v$log;

truncating (as requested) before column FIRST_CHANGE#

GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS           FIRS

---------- ---------- ---------- ---------- ---------- --- ---------------- ----

1          1          0   15728640          2 NO  CLEARING_CURRENT 13-M

3          1         13   15728640          2 YES INACTIVE         13-M

2          1          0   15728640          2 YES UNUSED           13-M

SQL> recover database until cancel;

Media recovery complete.

SQL> select * from v$log;

truncating (as requested) before column FIRST_CHANGE#

GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS           FIRS

---------- ---------- ---------- ---------- ---------- --- ---------------- ----

1          1          0   15728640          2 NO  CLEARING_CURRENT 13-M

3          1         13   15728640          2 YES INACTIVE         13-M

2          1          0   15728640          2 YES UNUSED           13-M

SQL> alter database open resetlogs;

Database altered.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值