<b>详解Oracle介质恢复的内部历程</b>[Oracle防范]
本文“<b>详解Oracle介质恢复的内部历程</b>[Oracle防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
这个是两年前学习Oracle总结的东西,不算什么新东西,仅作为个人的一个记录,也欢送大家一同学习谈论.
Oracle数据库的介质恢复历程相对非常复杂,Oracle毕竟作为一个大系统,计划是相当复杂和宏大的.不才结合对controlfile,redo log,datafile等文件的dump内容举行解析,试图深化的理解Oracle的介质恢复历程.虽不能从正向理解内部工作机制,但是从逆向推断也能做个大致理解,以此加强对Oracle的利用信心吧.
从这里开始吧:
1,获得media-recovery-start SCN.
查抄全部数据文件头,挑选最小的checkpoint SCN值作为start SCN.
假定获得到的checkpoint SCN值在数据文件的offline的SCN范围内,则采取offline-end的SCN.
2,checkpoint structure查抄thread启动数目
media-recovery SCN中的checkpoint structure查抄在该SCN点有几个thread线程启动了.
3,分配log buffer
为第二步中的每个启动的thread分配log buffer.
4,翻开log文件
--假如log文件在线,系统将会自动翻开;
--假如已经归档,将会提醒管理员输入log文件名称.
5,分配独占型media recovery lock
为每个需求履行media recovery的数据文件分配一个excusive(独占)media recovery lock.
6,对每个数据文件设置fuzzy bit
7,checkpoint bitvec 决意了初始启动的thread.
8,thread线程读取呼应的redo,并利用于数据库.
9,Media recovery发生查抄点:
--利用redo文件历程中,需求转换redo文件,每当转换时城市发生Media Recovery checkpoints.
--当数据文件的STOP SCN到达时,也会发生Media Recovery checkpoints,数据文件头的checkpoint也会被促进到该值.
10,完成media checkpoint
全部的thread完成其对应的redo日记利用,到达数据文件的有限STOP SCN值,完成了media recovery;media recovery fuzzy bit被排除,大概叫做重置为(0x0000.00000000 day/month/year hh24:mi:ss);接着更新数据文件头和掌握文件,表明了数据库整体一致.
文档参考:记着开始时从谷歌找到一篇介绍Oracle internal的文章作为了参考,并结合着dump文件的内容才有此领会.要感激一些那位“默默无闻”的作者.
原文标题:oracle介质恢复的内部历程--推断与参考
链接:http://www.cnblogs.com/daduxiong/archive/2010/08/13/1798797.html
以上是“<b>详解Oracle介质恢复的内部历程</b>[Oracle防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |