概述
总结一下Redo写的触发条件:
*******************************
1,每三秒钟超时(timeout):
当LGWR处于空闲状态时,它依赖于rdbms rpc message等待事件,处于休眠状态,直到三秒时间到,如果这个时候LGWR发现有Redo信息需要写出的话,那么LGWR将执行写的操作,
log file parallel write等待事件将会出现。
2.阀值的达到:
Redo log buffer 1/3 满;
Redo log buffer 拥有 1MB 的脏数据;
参数_log_io_size的设置很重要,一般为log_buffer的1/3大小
3.用户提交:
当一个transaction提交的时候,在Redo stream中将记录一个提交标志。在这些Redo被写到磁盘上之前,这个transaction是不能恢复的。所以,在transaction返回成功标志之前,必须等待LGWR写的完成。进程通知LGWR写,并且以
log file sync事件开始休眠。超时为1秒
4.在DBWn写之前:
如果DBWR将要写出的数据的高RBA超过LGWR的on-disk RBA,则DBWR将通知LGWR执行写的操作,在Oracle8i之前,此时DBWR将等待Log file sync事件。从Oracle8i开始,DBWR把这些block(将要写出的block,这种block的高RBA超过了LGWR的on-disk RBA)放入defer队列中,同时通知LGWR执行Redo写出。
注:
log buffer space等待事件说明log buffer空间不够用了。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12361284/viewspace-483/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/12361284/viewspace-483/
最后
以上就是眼睛大大门为你收集整理的触发LGWR进程写日志的4个条件的全部内容,希望文章能够帮你解决触发LGWR进程写日志的4个条件所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复