Oracle11g单实例一致性错误恢复方法

本文章向大家介绍

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

错误的解决办法。

在关闭数据库shutdown immediate时,如果强行关闭数据库,这时候就会导致数据库的状态非一致。数据库就会被锁起来。这时候我们就要恢复数据库的一致性。

startup
ORACLE instance started.

Total System Global Area 1.0066E+10 bytes
Fixed Size           12342064 bytes
Variable Size         2248150224 bytes
Database Buffers     7784628224 bytes
Redo Buffers           21209088 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 12631
Session ID: 977 Serial number: 51747

--使用隐藏参数忽略一致性验证:

conn / as sysdba
startup mount
alter system set "_allow_resetlogs_corruption"=true scope=spfile;
startup force mount;        --将数据库启动到 mount
alter database open resetlogs;    --使用 resetlogs 打开数据库

--此时再报 ORA-01139 错误

ERROR at line 1:
ORA-01139: RESETLOGS option only valid after an incomplete database recovery

解决办法:

recover database until cancel;
Media recovery complete.

alter database open resetlogs;

Database altered.

SQL> select status from v$instance;

STATUS
------------
OPEN

--取消隐藏参数后,可以正常启动数据库:

alter system reset "_allow_resetlogs_corruption" scope=spfile sid='*';

startup force    --然后重新启动,可以正常启动
Database altered.

Related Posts