ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1], [1498], [18713], [18720]

ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1], [1498], [18713], [18720]

数据库server出现ORA-00600[kcratr_nab_less_than_odr]。不能open数据库
1.open数据库报ORA-00600[kcratr_nab_less_than_odr]
SQL> ALTER DATABASE OPEN;
ALTER DATABASE OPEN
*
第 1 行出现错误:
ORA-00600: 内部错误代码, 參数: [kcratr_nab_less_than_odr], [1], [99189],
[43531], [43569], [], [], [], [], [], [], []
2.查看alert日志
Wed Jan 11 13:56:16 2012
ALTER DATABASE OPEN
Beginning crash recovery of 1 threads
 parallel recovery started with 2 processes
Started redo scan
Completed redo scan
 read 54591 KB redo, 0 data blocks need recovery
Errors in file d:\dbdms\diag\rdbms\dbdms\dbdms\trace\dbdms_ora_3108.trc  (incident=818557):
ORA-00600: 内部错误代码, 參数: [kcratr_nab_less_than_odr], [1], [99189], [43531], [43569], [], [], [], [], [], [], []
Incident details in: d:\dbdms\diag\rdbms\dbdms\dbdms\incident\incdir_818557\dbdms_ora_3936_i818557.trc
Aborting crash recovery due to error 600
Errors in file d:\dbdms\diag\rdbms\dbdms\dbdms\trace\dbdms_ora_3108.trc:
ORA-00600: 内部错误代码, 參数: [kcratr_nab_less_than_odr], [1], [99189], [43531], [43569], [], [], [], [], [], [], []
Errors in file d:\dbdms\diag\rdbms\dbdms\dbdms\trace\dbdms_ora_3108.trc:
ORA-00600: 内部错误代码, 參数: [kcratr_nab_less_than_odr], [1], [99189], [43531], [43569], [], [], [], [], [], [], []
ORA-600 signalled during: ALTER DATABASE OPEN…
Trace dumping is performing id=[cdmp_20120110214555]
3.查看trace文件
Trace file d:\dbdms\diag\rdbms\dbdms\dbdms\trace\dbdms_ora_3108.trc
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 – 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Windows NT Version V6.1 Service Pack 1 
CPU                 : 2 – type 8664, 2 Physical Cores
Process Affinity    : 0x0x0000000000000000
Memory (Avail/Total): Ph:2250M/4060M, Ph+PgF:5868M/8119M
Instance name: dbdms
Redo thread mounted by this instance: 1
Oracle process number: 17
Windows thread id: 3108, image: ORACLE.EXE (SHAD)
…………………………
WARNING! Crash recovery of thread 1 seq 99189 is
ending at redo block 43531 but should not have ended before
redo block 43569
Incident 826550 created, dump file: d:\dbdms\diag\rdbms\dbdms\dbdms\incident\incdir_826550\dbdms_ora_3108_i826550.trc
ORA-00600: ??????, ??: [kcratr_nab_less_than_odr], [1], [99189], [43531], [43569], [], [], [], [], [], [], []
 
ORA-00600: ??

????, ??

: [kcratr_nab_less_than_odr], [1], [99189], [43531], [43569], [], [], [], [], [], [], []

ORA-00600: ???

?

??

, ??: [kcratr_nab_less_than_odr], [1], [99189], [43531], [43569], [], [], [], [], [], [], []

通过alert和trace中的内容能够知道,数据库须要恢复到rba到43569,可是由于某种原因实例恢复的时候,仅仅能利用1 thread 99189 seq#,恢复rba到43531。

从而导致数据库无法正常open

This Problem is caused by Storage Problem of the Database Files. 
The Subsystem (eg. SAN) crashed while the Database was open. 
The Database then crashed since the Database Files were not accessible anymore. 
This caused a lost Write into the Online RedoLogs and so Instance Recovery is not possible and raising the ORA-600.
4.解决方法
SQL> SELECT STATUS FROM V$INSTANCE;
 
STATUS
————
MOUNTED
 
–尝试直接recover database
SQL> RECOVER DATABASE ;
ORA-00283: 恢复会话因错误而取消
ORA-00264: 不要求恢复
–提示不用恢复
 
–再打开数据库。还是kcratr_nab_less_than_odr错误警告
SQL> ALTER DATABASE OPEN;
ALTER DATABASE OPEN
*
第 1 行出现错误:
ORA-00600: 内部错误代码, 參数: [kcratr_nab_less_than_odr], [1], [99189],
[43531], [43569], [], [], [], [], [], [], []
 
–尝试不全然恢复
SQL> RECOVER DATABASE UNTIL CANCEL;
ORA-10879: error signaled in parallel recovery slave
ORA-01547: 警告: RECOVER 成功但 OPEN RESETLOGS 将出现例如以下错误
ORA-01152: 文件 1 没有从过旧的备份中还原
ORA-01110: 数据文件 1: ‘D:\DBDMS\DATA\SYSTEM01.DBF’
 
–重建控制文件
SQL> ALTER DATABASE BACKUP CONTROLFILE TO TRACE AS ‘D:/1.TXT’;
 
数据库已更改。
 
SQL> SHUTDOWN IMMEDIATE;
ORA-01109: 数据库未打开
 
 
已经卸载数据库。

ORACLE 例程已经关闭。
SQL> STARTUP NOMOUNT;
ORACLE 例程已经启动。

 
Total System Global Area  417546240 bytes
Fixed Size                  2176328 bytes
Variable Size             268438200 bytes
Database Buffers          138412032 bytes
Redo Buffers                8519680 bytes
SQL> 
create controlfile reuse database ‘AFC010C1’ noresetlogs noarchivelog

maxlogfiles 16

maxlogmembers 4

maxdatafiles 100

maxinstances 8

maxloghistory 18688

logfile

group 1 (‘/oracle/redo1/AFC010C1/redo01a.log’,’/oracle/redo2/AFC010C1/redo01b.log’) size 50M blocksize 512,

group 2 (‘/oracle/redo1/AFC010C1/redo02a.log’,’/oracle/redo2/AFC010C1/redo02b.log’) size 50M blocksize 512,

group 3 (‘/oracle/redo1/AFC010C1/redo03a.log’,’/oracle/redo2/AFC010C1/redo03b.log’) size 50M blocksize 512,

group 4 (‘/oracle/redo1/AFC010C1/redo04a.log’,’/oracle/redo2/AFC010C1/redo04b.log’) size 50M blocksize 512

DATAFILE

‘/oracle/data1/AFC010C1/AFC_BIZ_DATA01.dbf’,

‘/oracle/data1/AFC010C1/AFC_LOG_DATA01.dbf’,

‘/oracle/data1/AFC010C1/AFC_TXN_DATA01.dbf’,

‘/oracle/data1/AFC010C1/AFC_CD_DATA01.dbf’,

‘/oracle/data1/AFC010C1/AFC_RPT_DATA01.dbf’,

‘/oracle/data1/AFC010C1/AFC_WS_DATA01.dbf’,

‘/oracle/data1/AFC010C1/sysaux01.dbf’,

‘/oracle/data1/AFC010C1/AFC_EOD_DATA01.dbf’,

‘/oracle/data1/AFC010C1/AFC_SYSCD_DATA01.dbf’,

‘/oracle/data1/AFC010C1/DBMGR_DATA01.dbf’,

‘/oracle/data1/AFC010C1/system01.dbf’,

‘/oracle/data2/AFC010C1/AFC_BIZ_INDX01.dbf’,

‘/oracle/data2/AFC010C1/AFC_CD_INDX01.dbf’,

‘/oracle/data2/AFC010C1/AFC_EOD_INDX01.dbf’,

‘/oracle/data2/AFC010C1/AFC_LOG_INDX01.dbf’,

‘/oracle/data2/AFC010C1/AFC_RPT_INDX01.dbf’,

‘/oracle/data2/AFC010C1/AFC_SYSCD_INDX01.dbf’,

‘/oracle/data2/AFC010C1/AFC_TXN_INDX01.dbf’,

‘/oracle/data2/AFC010C1/AFC_WS_INDX01.dbf’,

‘/oracle/data2/AFC010C1/DBMGR_INDX01.dbf’,

‘/oracle/data2/AFC010C1/undotbs01.dbf’,

‘/oracle/data2/AFC010C1/users01.dbf’

character set zhs16gbk;

控制文件已创建。
 
–继续尝试恢复
SQL> RECOVER DATABASE ;
完毕介质恢复。
SQL> ALTER DATABASE OPEN;
 
数据库已更改。

–open成功
在这次恢复中,主要就是重建控制文件,然后直接恢复成功。假设redo有损坏,那么可能须要使用不全然恢复。然后使用resetlogs打开数据库

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/109082.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 什么是pnp问题_pnp什么意思

    什么是pnp问题_pnp什么意思点击关注上方“五分钟学算法”,设为“置顶或星标”,第一时间送达干货。转自后端技术指南针1前言今天和大家一起了解个高能知识点:P=NP问题。看到这里我们可能是一头雾水,不由得发问:P问题…

  • MySQL——MySQL 图形化管理工具的介绍

    MySQL——MySQL 图形化管理工具的介绍文章目录MySQL——MySQL图形化管理工具的介绍1、MySQLWorkbench2、Navicat3、SQLyog4、DBeaver5、DataGripMySQL——MySQL图形化管理工具的介绍MySQL图形化管理工具极大地方便了数据库的操作与管理,常用的图形化管理工具有:MysQLWorkbench、phpMyAdmin、NavicatPreminum、MySQLDumper、SQLyog、dbeaver、MysQLODBcConnector、DataGrip。1、MySQL

  • matlab 画折线图

    matlab 画折线图代码:效果图:x=1:1:5就是x轴上的数据,从1开始到5结束(即应该有五个数据),每个数据的间隔是1.把开始的1改成2,结束的5改成6,整个折线图就会向右平移一个单位。plot(x,a,’-*b’,x,b,’-or’)是设置折线图中相应点和线的特征的,函数说明如下:对于‘’内的线条形状,总结了如下图:线型:线条宽度:指定线条的宽度,取值为整数(…

  • golang deepcopy_dos copy命令拷贝文件夹

    golang deepcopy_dos copy命令拷贝文件夹Go语言中所有赋值操作都是值传递,如果结构中不含指针,则直接赋值就是深度拷贝;如果结构中含有指针(包括自定义指针,以及切片,map等使用了指针的内置类型),则数据源和拷贝之间对应指针会共同指向同一块内存,这时深度拷贝需要特别处理。目前,有三种方法,一是用gob序列化成字节序列再反序列化生成克隆对象;二是先转换成json字节序列,再解析字节序列生成克隆对象;三是针对具体情况,定制化拷贝。前两种方法虽……

    2022年10月31日
  • XML简单入门_XML文件都有哪些应用

    XML简单入门_XML文件都有哪些应用XML作用用来保存数据,而且这些数据具有自我描述性它还可以作为项目或模块的配置文件还可以作为网络传输数据的格式(JSON现在为主)语法4. 文档声明5. 元素(标签)6. xml属性7. xmll注释8. 文本区域<?xml version=”1.0″ encoding=”utf-8″ ?><!–文档声明–><books> <book sn = “SN12345648987”> <name>

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号