暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

在Oracle中,若数据库发生写错误(非SYSTEM表空间文件),则Oracle是如何处理相关数据文件的?

DB宝 2017-10-11
760


Q
题目如下所示:

在Oracle中,若数据库发生写错误(非SYSTEM表空间文件),则Oracle是如何处理相关数据文件的?


     

A
答案如下所示:



 在Oracle 11.2.0.2版本之前,如果数据库运行在归档模式下,并且写错误发生在非SYSTEM表空间文件,那么Oracle数据库会将发生错误的文件离线(OFFLINE)。但是,从Oracle 11.2.0.2开始,数据库会以Crash实例替代相关数据文件的OFFLINE。需要注意的是,在非归档模式下或者SYSTEM文件遭受错误时,数据库会直接崩溃。

Oracle 11.2.0.2版本开始,一个新的隐含参数“_datafile_write_errors_crash_instance”被引入,该参数的默认值为TRUE,表示当Oracle数据库发生数据文件写错误时,Oracle会直接Crash数据库实例。

为什么要引入这个参数呢?因为在归档模式下,当发生数据文件(非SYSTEM文件)写错误时,如果Oracle将数据文件离线,那么这会造成很多灾难,类似的错误日志可能是这样的:

Fri Jan 13 19:32:21 2013

KCF: write/open error block=0xf1fa6 online=1

     file=73 dev/rods_gm05

     error=27063 txt: 'IBM AIX RISC System/6000 Error: 22: Invalid argument

Additional information: -1

Additional information: 557056'

Automatic datafile offline due to write error on

file 73: dev/rods_gm05

鉴于很多用户遇到的困境,Oracle做出了修正,这一修正在MOS上以BUG形式被提交,其内容为:Bug 7691270  Crash the DB in case of write errors (rather than just offline files)



DB笔试面试历史连接

http://mp.weixin.qq.com/s/Vm5PqNcDcITkOr9cQg6T7w

About Me:小麦苗

 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用

● 作者博客地址:http://blog.itpub.net/26736162/abstract/1/

 本系列题目来源于作者的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

 版权所有,欢迎分享本文,转载请保留出处

 QQ:646634621  QQ群:230161599

● 题目解答若有不当之处,还望各位朋友批评指正,共同进步

长按下图识别二维码或微信扫描下图二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。


最后修改时间:2020-01-10 20:56:53
文章转载自DB宝,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论