最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

ORA-00704-ORA-01555

来源:动视网 责编:小采 时间:2020-11-09 13:01:46
文档

ORA-00704-ORA-01555

ORA-00704-ORA-01555:主机断电后,数据库启动报错ORA-00600: [kb_sanity_check_2] ORA-00600: internal error code, arguments: [kb_sanity_check_2], [1292931], [1188440], [0x000000000], [], [], [], []SUCCESS:
推荐度:
导读ORA-00704-ORA-01555:主机断电后,数据库启动报错ORA-00600: [kb_sanity_check_2] ORA-00600: internal error code, arguments: [kb_sanity_check_2], [1292931], [1188440], [0x000000000], [], [], [], []SUCCESS:


主机断电后,数据库启动报错ORA-00600: [kb_sanity_check_2] ORA-00600: internal error code, arguments: [kb_sanity_check_2], [1292931], [1188440], [0x000000000], [], [], [], []SUCCESS: diskgroup RACDB was dismounted 这个错误表示控制文件

主机断电后,数据库启动报错ORA-00600: [kb_sanity_check_2]

ORA-00600: internal error code, arguments: [kb_sanity_check_2], [1292931], [1188440], [0x000000000], [], [], [], []
SUCCESS: diskgroup RACDB was dismounted

这个错误表示控制文件存在一致现象,由于没有备份控制文件,只能手工去创建。
创建完成时在open数据时报错如下

ORA-00704: bootstrap process failure
ORA-00704: bootstrap process failure
ORA-00604: error occurred at recursive SQL level 1
ORA-01555: snapshot too old: rollback segment number 10 with name "_SYSSMU10$" too small
Error 704 happened during db open, shutting down database

出现这个错误一般情况下推荐scn即可,查看文件头scn

以数据文件头scn+100000 去修改scn

SQL> SELECT 2482746156+100000 FROM dual;
 
2482746156+100000
-----------------
 2482846156
 
SQL> SELECT to_char('2482846156','xxxxxxxxxxxxxxx') FROM dual;
 
TO_CHAR('2482846156','XXXXXXXXXXXXXXX')
------------------------------------------
 93fd39cc
 
oradebug setmypid
oradebug dumpvar sga kcsgscn_
oradebug poke 0x38000F3D0 8 0x93fd39cc

但是在启动的时候还是报ORA-01555: snapshot too old: rollback segment number 10 with name “_SYSSMU10$” too small
通过10046观察启动时读取的数据块

PARSING IN CURSOR #5 len=52 dep=1 uid=0 oct=3 lid=0 tim=401202814297 hv=429618617 ad='ab23a8'
SELECT ctime, mtime, stime FROM obj$ WHERE obj# = :1
END OF STMT
EXEC #5:c=0,e=2126,p=0,cr=0,cu=0,mis=1,r=0,dep=1,og=4,tim=401202816808
WAIT #5: nam='db file sequential read' ela= 716 file#=1 block#=218 blocks=1 obj#=-1 tim=401202817826
WAIT #5: nam='db file sequential read' ela= 10885 file#=1 block#=219 blocks=1 obj#=-1 tim=4012028240
WAIT #5: nam='db file sequential read' ela= 7552 file#=1 block#=122 blocks=1 obj#=-1 tim=4012028369

发现这里最后一次读取的是file 1 block 122,这就可以去dump这个block 查看这个block的scn,

ALTER system dump datafile '+xxxxxxx/system.256.720013083' block 122;
发现这个block的scn为0x94a4c467
 
oradebug poke 0x38000F3D0 8 0x95a4c467

修改之后数据库成功打开

文档

ORA-00704-ORA-01555

ORA-00704-ORA-01555:主机断电后,数据库启动报错ORA-00600: [kb_sanity_check_2] ORA-00600: internal error code, arguments: [kb_sanity_check_2], [1292931], [1188440], [0x000000000], [], [], [], []SUCCESS:
推荐度:
标签: 主机 数据库 断电
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top