ORA-600 [4000] 错误解决一例

来源:互联网 发布:c语言模块化编程视频 编辑:程序博客网 时间:2024/05/30 23:47

今天晚上,有个项目非归档数据库10.2版本rac,报打不开,使用_allow_resetlog_currption打开报错

ORA-00600: internal error code, arguments: [4000]

参考了下面的文章:

http://www.killdb.com/2011/08/30/ora-600-4000%E6%81%A2%E5%A4%8D%E4%B8%80%E4%BE%8B.html

错误的内容居然一样:

Object id on Block? Y seg/obj: 0x12  csc: 0xb2c.3a7f4d34  itc: 1  flg: -  typ: 1 - DATA     fsl: 0  fnx: 0x0 ver: 0x01 Itl           Xid                  Uba         Flag  Lck        Scn/Fsc0x01   0x0005.01e.000099e3  0x00802689.29dd.09  --U-    1  fsc 0x0000.3a7f4d35data_block_dump,data header at 0x847ce044===============tsiz: 0x1fb8hsiz: 0xeapbl: 0x847ce044bdba: 0x0040007a     76543210flag=--------ntab=1nrow=108frre=-1fsbo=0xeafseo=0x385avsp=0x369tosp=0x3690xe:pti[0] nrow=108 offs=0

 

bdba的值是一样的,但是不能执行下面的语句:

  SELECT DBMS_UTILITY.data_block_address_file(TO_NUMBER ('40007a','XXXXXXXX')) file_id, DBMS_UTILITY.data_block_address_block(TO_NUMBER ('40007a','XXXXXXXX')) block_idFROM DUAL;

 

 

 

原因是数据库未打开。

我在另外一个库上去执行,发现结果跟博主一样,也是1号文件122号块,所以我认为本库的应该也是。

编译bbed,可以参考Dave的博客:http://blog.csdn.net/tianlesoftware/article/details/5006580

 
 
 
 
然后跟博主一样执行
modify /x 8001 offset 60
然后sum apply
重启数据库,直接去open,报错就跟博主不一样了。
ORA-600[KCLCHKBLK_4]
这个错误,网上并不是很多见,并且没找到确定的解决方案。
但转机突然就出现了。
我把数据库再down掉,重启,发现居然已经open了。
我简直不敢相信自己的眼睛。

 

剩下的就是,先让他们把数据expdp出来,然后再尝试是否可以正常使用。

0 0
原创粉丝点击