非空闲的等待事件-log buffer space

log buffer space(Configuration类)

当会话由于日志缓冲区空间不足而无法将重做日志条目复制到日志缓冲区时,会话将在log buffer space事件上等待。LGWR负责写出重做条目,腾出日志缓冲区空间。
当会话必须等待日志缓冲区中的空间变成可用以写入新的信息时产生该事件。 LGWR进程周期性地从日志缓冲区写入重做日志文件,使得日志缓冲区可以重复可以。 该等待事件表示:应用程序生成重做日志的速度比LGWR进程将其写入重做日志文件的速度快。[@more@]
  1. 通过查询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')

  1. 该事件没有参数。
  2. 产生该等待的原因:

过小的日志缓冲区

>> 检查当前LOG BUFFER的设置,并根据需要做适当的调整。

>> 日志缓冲区不是SGA中的动态组件,因此必须生效前需要重启实例。

缓慢的I/O子系统

>> 确保log file parallel write等待事件的平均等待时间在可接受的范围内,否则需要改进IO性能。

>> 根据应用程序的情况,在适当的位置设置NOLOGGING选项。

>> 作为辅助手段借助Oracle Log miner深入研究来自于v$sql视图或重做日志文件的DML,发现异常行为。

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

转载于:http://blog.itpub.net/79291/viewspace-910243/

Oracle数据库中的等待事件是指在数据库运行时,由于某些资源的限制,导致进程需要等待事件。以下是常见的33个Oracle等待事件: 1. latch free - 等待获取latch资源的进程。 2. CPU time - 等待CPU处理时间。 3. log file sync - 等待日志文件同步完成。 4. buffer busy waits - 等待访问繁忙的数据缓冲区。 5. db file sequential read - 等待从磁盘读取数据文件的读取操作完成。 6. db file scattered read - 等待从磁盘读取散乱的数据块的读取操作完成。 7. log file parallel write - 等待并行写入日志文件的操作完成。 8. direct path read - 等待直接路径读取完成。 9. SQL*Net message from client - 等待来自客户端的SQL*Net消息。 10. log buffer space - 等待空闲的日志缓冲区空间。 11. control file parallel write - 等待并行写入控制文件的操作完成。 12. db file parallel write - 等待并行写入数据文件的操作完成。 13. enqueue - 等待获取enqueue资源的操作完成。 14. db file async I/O submit - 等待异步I/O提交的操作完成。 15. db file async I/O complete - 等待异步I/O完成的操作。 16. direct path write - 等待直接路径写入操作完成。 17. SQL*Net more data to client - 等待传输更多SQL*Net数据给客户端。 18. redo log space requests - 等待空闲的重做日志空间。 19. buffer deadlock - 等待缓冲区死锁解除。 20. db file checkpoint completion - 等待数据文件检查点完成。 21. db file parallel read - 等待并行读取数据文件的操作。 22. latch: cache buffers chains - 等待获取缓冲区链锁的进程。 23. read by other session - 等待其他会话读取数据。 24. control file sequential read - 等待从控制文件读取数据。 25. ASM background process - 等待ASM后台进程操作完成。 26. latch: In-Memory undo latch - 等待获取In-Memory undo latch锁的进程。 27. cell single block physical read - 等待从Cell服务器读取单个块的物理读取操作完成。 28. library cache: mutex X - 等待获取库缓存互斥锁的进程。 29. PX Deq: Table Q Normal - 等待并行执行查询操作。 30. direct path read temp - 等待从临时文件读取数据的直接路径读取操作完成。 31. PX Deq Execution Msg - 等待并行执行消息处理。 32. PX Deq Credit: send blkd - 等待并行执行接收处理。 33. PX Deq: reap credit - 等待并行执行回收资源的操作完成。 以上是常见的33个Oracle等待事件,了解这些事件对于排查和优化数据库性能常重要。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值