工程师将数据库未关闭进行整体拷贝在异机以为可以打开,将原服务器系统重做。打开时数据库报如下错误

ORA-00600: 内部错误代码,参数: [kcratr1_lostwrt], [], [], [], [], [], [], []

原因:

When an instance is restarted following an instance crash, Oracle carries out some checks against the last block that was written to disk prior to the instance crash.

If Oracle finds an old block, then this suggests a lost write and the  error is raised

   根据http://www.eygle.com/archives/2010/05/ora-00600_kcratr1_lostwrt.html提示信息进行恢复如下:

SQL> startup

ORACLE 例程已经启动。 Total System Global Area  135338868 bytes

Fixed Size                   453492 bytes

Variable Size             109051904 bytes

Database Buffers           25165824 bytes

Redo Buffers                 667648 bytes

数据库装载完毕。

ORA-00600: 内部错误代码,参数: [kcratr1_lostwrt], [], [], [], [], [], [], []

SQL> shutdown immediate

ORA-01109: 数据库未打开

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup mount

ORACLE 例程已经启动。 Total System Global Area  135338868 bytes

Fixed Size                   453492 bytes

Variable Size             109051904 bytes

Database Buffers           25165824 bytes

Redo Buffers                 667648 bytes

数据库装载完毕。

SQL> recover database;

完成介质恢复。

SQL> alter database open; 数据库已更改。

SQL>exit;