ORA-00600:[Kcratr1_lastbwr] During Database Startup after a Crash (Doc ID 393984.1)

来源:互联网 发布:通信协议和网络协议 编辑:程序博客网 时间:2024/05/16 10:50

这几天在做虚拟化的迁移,一些备库都是在线迁移,虚拟机很多都是直接断电重启,导致有些机器上面的oracle数据库在崩溃后做前滚,回滚出现一些问题。

这不,今天又遇到一个,数据库无法open,报ORA-00600:[Kcratr1_lastbwr] 


关于这个问题,metalink上有详细的介绍,doc id 393984.1

CHANGES

There was a disk problem that caused the database to crash.

CAUSE

Oracle is unable to perform instance recover but it works when is invoked manually.

SOLUTION

Mount the database and issue a recover statement

SQL> startup mount;

SQL> recover database;

SQL> alter database open;
按照metalink上的步骤,数据库可以open了。

------------------------------------------------------------------------------------------------------------------------------------------------------------
能直接open了,说明运气还不错,在网上看到了另外一种情况,就是在recover的时候报错:

SQL> recover database;

ORA-00283: recovery session canceled due to errors

ORA-12801: error signaled in parallel query server P002

ORA-10562: Error occurred while applying redo to data block (file# 1, block#

4568)

ORA-10564: tablespace SYSTEM

ORA-01110: data file 1: '/opt/oracle/oradata/orcl/system01.dbf'

ORA-10561: block type 'TRANSACTION MANAGED INDEX BLOCK', data object# 576


alert日志里面会有类似这样的报错信息:

Errors in file /opt/oracle/admin/orcl/bdump/orcl_p002_7917.trc:

ORA-10562: Error occurred while applying redo to data block (file# 1, block# 4568)


网络上给的解释是:当前在线日志损坏,导致undo回滚段出现问题,又由于系统突然掉电,系统表空间在重启实例后要进行实例恢复,当前在线日志损坏,系统表空间无法进行recover


给出的解决方法如下:

SQL>startup mount

SQL>recover database using backup controlfile until cancel;

SQL>alter database open resetlogs;

 

SQL> startup mount

SQL> alter system set “_allow_resetlogs_corruption”=true scope=spfile;

SQL>shutdown immediate

SQL> startup mount

SQL> alter database open resetlogs;

 

SQL> startup



-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
这个问题,后续再继续探究一下。


0 0
原创粉丝点击