- 最后登录
- 2017-5-4
- 在线时间
- 81 小时
- 威望
- 999
- 金钱
- 2391
- 注册时间
- 2013-9-11
- 阅读权限
- 150
- 帖子
- 1124
- 精华
- 5
- 积分
- 999
- UID
- 1220
|
1#
发表于 2017-4-16 15:07:57
|
查看: 1729 |
回复: 0
数据库损坏了,我使用_allow_resetlogs_corruption打开
开始报ora-600 2662错误
使用adjust_scn后,变成了ora-600 [2256]错误
现在怎么adjust_scn,好象一直是说system01.dbf需要recover
alert一直报2256错误
在网上和metalink上查不到2256错误的处理方法,请大家支招
Errors in file c:\oracle\admin\orcl\udump\orcl_ora_952.trc:
ORA-00600: internal error code, arguments: [2662], [1478], [4171734078], [1478], [4174088791], [8388617], [], []
Fri Nov 16 10:48:46 2007
Errors in file c:\oracle\admin\orcl\udump\orcl_ora_952.trc:
ORA-00600: internal error code, arguments: [2662], [1478], [4171734078], [1478], [4174088791], [8388617], [], []
使用adjust_scn level 10后
Recovery of Online Redo Log: Thread 1 Group 4 Seq 1 Reading mem 0
Mem# 0 errs 0: E:\ORADATA\ORCL\REDO04.LOG
Fri Nov 16 11:54:53 2007
Ended recovery at
Thread 1: logseq 1, block 3, scn 1478.4171754086
0 data blocks read, 0 data blocks written, 1 redo blocks read
Crash recovery completed successfully
Fri Nov 16 11:54:53 2007
Thread 1 advanced to log sequence 2
Thread 1 opened at log sequence 2
Current log# 1 seq# 2 mem# 0: E:\ORADATA\ORCL\REDO01.LOG
Successful open of redo thread 1.
Fri Nov 16 11:54:53 2007
SMON: enabling cache recovery
Fri Nov 16 11:54:53 2007
Errors in file c:\oracle\admin\orcl\udump\orcl_ora_2824.trc:
ORA-00600: internal error code, arguments: [2256], [0], [1073741824], [1478], [4171754090], [], [], []
Fri Nov 16 11:54:54 2007
Errors in file c:\oracle\admin\orcl\udump\orcl_ora_2824.trc:
ORA-00600: internal error code, arguments: [2256], [0], [1073741824], [1478], [4171754090], [], [], []
Fri Nov 16 11:54:54 2007
Error 600 happened during db open, shutting down database
USER: terminating instance due to error 600
Instance terminated by USER, pid = 2824
ORA-1092 signalled during: alter database open...
还是我对scn的结构,及 event '10015 trace name adjust level n'的理解不够深刻
scn=scn_wrap.scn_base,当scn_base超过0xFFFFFFFF后,scn_wrap会增一,base归零,这个大家可能都知道。
我理解错的是,以为'adjust_scn level n'的结果是scn = scn+n*10亿,其实不然
它是设置scn=n*10亿
所以当我使用'adjust_scn level 1' 之后,scn= 1073741824,因为这个scn比current scn小,oracle就报了ora-00600 [2256]错误
这里正确的设置n值是=(scn_wrap+1)*4=1479*4,所以要执行'adjust_scn level 5916'
这样执行过后,系统不再报ora-600 2256错,当然后面还有其它报错,在itpub上搜一搜基本上都能解决
|
|