Log Switch Steps

日志切换期间Redo generation完全disabled。这通过设置一个sga变量(反映log switch的原因和状态)来实现。要在log bufferallocate space

Sessions首先检查该变量,如果log switch在进行中,那么Sessions等待与

log switch有关的几个等待事件之一。直到log switch完成,才能够在log bufferspace allocation。因此,log switch期间,不会有log buffer space等待事件。但是,如果大量进程正等待日志切换完成,那么,突然会有大量redo generation,其后,必然导致log buffer space等待

完成日志切换执行四个步骤


1.执行一个controlfile transaction,选择将要使用的下一个log file,并清除它的controlfile entry.通常选择具有lowest log sequence numberlog file。如果必要,log switch将会延迟,等待log switch checkpoint的完成,(log switch会引起checkpoint,保证要切换的日志对应的脏数据块都写入disk,为的是实例失败后,实例恢复时不会使用已经切换过的日志,即实例恢复仅仅使用当前日志)或者等待ARCn已经归档了下一个log file的内容。如果这样,会话sessions等待log switch,并转入sleep,等待

log file switch (checkpoint incomplete) or log file switch (archiving needed)事件,相反等待log file switch completion事件。

2.Flushes任何log buffer中剩余的redo,接着写log file last redo recordscnhigh SCN)log file header block。一旦这些写操作完成后,lgwr关闭log file

3.接着,向前移动scn,并再执行一次controlfile transaction,标记该next log fileCURRENT,标记the old log fileACTIVE.一旦dbwn完成log switch checkpointthe old log file的状态将变为INACTIVE。如果数据库处于ARCHIVELOG mode,那么在控制文件中的log file entries section lgwr还要添加the previous log filearchive linked list(归档链表),如果启用了automatic archivinglgwr通知arcn,归档the previous log file。从o8.1开始,lgwr能够产生一个新的ARCn进程,如果the existing archive processes忙的话。

4.最后,lgwr打开所有members of the new log file group,并写new log sequence number and low SCNheader block.接着,再次启用redo generation

log file open and close operations期间,对log file header blocks的下操作是log file single writeHeader block writes必须是单个写(而不是parallel writes to all the members)因为部分header informationfile number,每个member都不同。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9599/viewspace-472955/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/9599/viewspace-472955/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值