1.当会话由于日志缓冲区空间不足而无法将重做日志条目复制到日志缓冲区时,会话将在log buffer space事件上等待。LGWR负责写出重做条目,腾出日志缓冲区空间。
2.当会话必须等待日志缓冲区中的空间变成可用以写入新的信息时产生该事件。
3.LGWR进程周期性地从日志缓冲区写入重做日志文件,使得日志缓冲区可以重复可以。
4.该等待事件表示:应用程序生成重做日志的速度比LGWR进程将其写入重做日志文件的速度快。
5.通过查询v$sesstat和v$sysstat查询统计""可跟踪进程或系统必须等待空间的次数。
-- 会话级统计必须等待日志缓冲区的次数。
SELECT s.SID ,
s.VALUE
FROM v$sesstat s
WHERE s.statistic# =
(SELECT t.statistic#
FROM v$statname t
WHERE t.NAME = 'redo
buffer allocation retries')
-- 系统级统计必须等待日志缓冲区的次数
SELECT s.STATISTIC#, s.CLASS,
s.NAME , s.VALUE
FROM v$sysstat s
WHERE s.statistic# =
(SELECT t.statistic#
FROM v$statname t
WHERE t.NAME = 'redo
buffer allocation retries')
6.该事件没有参数。
7.产生该等待的原因:
过小的日志缓冲区 | >> 检查当前LOG BUFFER的设置,并根据需要做适当的调整。 >> 日志缓冲区不是SGA中的动态组件,因此必须生效前需要重启实例。 |
缓慢的I/O子系统 | >> 确保log file parallel write等待事件的平均等待时间在可接受的范围内,否则需要改进IO性能。 >> 根据应用程序的情况,在适当的位置设置NOLOGGING选项。 >> 作为辅助手段借助Oracle Log miner深入研究来自于v$sql视图或重做日志文件的DML,发现异常行为。 |

扫描二维码关注我的微学堂
搜索刘老师微信号:Rman-2014,备注“Oracle学习与咨询”,即可添加好友;或者扫描下面二维码,关注我的“微学堂”公众号,了解最新OCP认证动态、题库及答案解析、培训机构及讲师介绍、课堂授课内容等。每天还有一篇技术文章发布哦!





