在Oracle数据库中,丢失归档的状况下数据文件如何恢复?面试
若是一个表空间的数据文件损坏,在有备份的状况下,那么能够使用数据文件的备份进行还原,可是还须要归档文件进行恢复,才能使数据文件到达一个最新的一致性状态,从而才能打开数据库。若是须要的归档文件没法提供,好比被删除了,那么在这种状况下如何打开数据库呢?数据库
在这种状况下因为缺乏归档,数据库没法恢复,可是若是与该表空间相关的数据改变不多或者基本没有改变的状况下能够经过改变数据文件头的SCN号,让其和System Checkpoint SCN和Datafile Checkpoint SCN号一致,就可让Oracle避开对该文件的检查,Oracle就不会去作介质恢复,而只作实例恢复,这样就能够实现彻底恢复,及时打开数据库。微信
通常来讲,推动数据文件头的SCN号有两种处理办法:第一,利用BBED(Block Brower and Editor)修改数据文件头,推动SCN号来打开数据库。第二,设置隐含参数“_ALLOW_RESETLOGS_CORRUPTION”为TRUE来打开数据库,该参数默认为FALSE,待数据库打开后,要将该参数从参数文件中去掉,命令以下所示:网络
ALTER SYSTEM SET "_ALLOW_RESETLOGS_CORRUPTION"=TRUE SCOPE=SPFILE;--跳过数据库一致性检查ide
ALTER SYSTEM RESET "_ALLOW_RESETLOGS_CORRUPTION" SCOPE=SPFILE SID='*';--取消该参数学习
& 说明:spa
有关丢失归档文件后数据文件的恢复具体过程能够参考个人BLOG:http://blog.itpub.net/26736162/viewspace-2079337/、http://blog.itpub.net/26736162/viewspace-2125336/.net
http://mp.weixin.qq.com/s/Vm5PqNcDcITkOr9cQg6T7worm |
● 本文做者:小麦苗,只专一于数据库的技术,更注重技术的运用blog
● 做者博客地址:http://blog.itpub.net/26736162/abstract/1/
● 本系列题目来源于做者的学习笔记,部分整理自网络,如有侵权或不当之处还请谅解
● 版权全部,欢迎分享本文,转载请保留出处
● QQ:646634621 QQ群:618766405
● 题目解答如有不当之处,还望各位朋友批评指正,共同进步
长按下图识别二维码或微信扫描下图二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。
本文分享自微信公众号 - DB宝(lhrdba)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。