bootstrap$损坏模拟
--损坏前先备份system.dbf
select count(*) from bootstrap$;
delete from bootstrap$;
commit;
shutdown immediate
startup
2、通过10046定位问题
startup mount;
oradebug setmypid
oradebug tracefile_name
alter session set events '10046 trace name context forever,level 12';
alter session set db_file_multiblock_read_count=1;
alter database open;
oradebug EVENT 10046 trace name context off
从trace可以看到读取block 520到523的过程中发生报错
3、通过bbed 做块拼接
bootstrap$ 基表在相同版本相同操作系统下内容是一样的,从其他相同环境复制system.dbf过来(只需要复制前10M即可),用bbed做块复制
dd if=system01.dbf.bak of=system01_bak bs=10M count=1
copy file 10 block 520 to file 1 block 520
copy file 10 block 521 to file 1 block 521
copy file 10 block 522 to file 1 block 522
copy file 10 block 523 to file 1 block 523
sum apply
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




