Oracle错误ORA-03113: end-of-file on communication channel处理办法

时间:2022-08-26 18:53:39

机器遭遇断电,之后oracle就不能启动了,报错ORA-03113: end-of-file on communication channel (通信通道的文件结尾)


SQL> conn /as sysdba
Connected to an idle instance.
SQL> startup 
ORACLE instance started.


Total System Global Area  417546240 bytes
Fixed Size    2213936 bytes
Variable Size  398460880 bytes
Database Buffers    8388608 bytes
Redo Buffers    8482816 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 2517
Session ID: 1137 Serial number: 5

网上分析,可能由于昨晚数据库强制关闭,导致文件状态可能不一致,因为正常关闭数据库会同步校验各文件,使得重新启动的时候文件时间点一致。解决方案如下
启动DB



SQL> exit

[oracle@iZwz94iiauukqd0inyhirbZ ~]$ sqlplus /nolog


SQL*Plus: Release 11.2.0.1.0 Production on Mon Nov 14 13:25:52 2016


Copyright (c) 1982, 2009, Oracle.  All rights reserved.


SQL> conn /as sysdba
Connected to an idle instance.
SQL> startup mount
ORACLE instance started.


Total System Global Area  417546240 bytes
Fixed Size    2213936 bytes
Variable Size  398460880 bytes
Database Buffers    8388608 bytes
Redo Buffers    8482816 bytes
Database mounted.
SQL> select * from v$log;


    GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE  MEMBERS ARC
---------- ---------- ---------- ---------- ---------- ---------- ---
STATUS FIRST_CHANGE# FIRST_TIME  NEXT_CHANGE#
---------------- ------------- ------------------ ------------
NEXT_TIME
------------------
1    1     151   52428800   512 1 NO
INACTIVE       4428274 13-NOV-16       4460292
13-NOV-16


3    1     153   52428800   512 1 NO
CURRENT       4486336 13-NOV-16    2.8147E+14




    GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE  MEMBERS ARC
---------- ---------- ---------- ---------- ---------- ---------- ---
STATUS FIRST_CHANGE# FIRST_TIME  NEXT_CHANGE#
---------------- ------------- ------------------ ------------
NEXT_TIME
------------------


2    1     152   52428800   512 1 NO
INACTIVE       4460292 13-NOV-16       4486336
13-NOV-16




SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01139: RESETLOGS option only valid after an incomplete database recovery




SQL> r ecover database until time '2016-11-13'
Media recovery complete.
SQL> alter database open resetlogs;


Database altered.
成功。