![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
oracle wait events
cloudsnowe
force on oracle
展开
-
db file scattered read
db file scattered read 可能的原因: 1.oracle会话请求正在等待从磁盘读取数据到多个不连续的内存区域。 2.通常是多块读,DB_FILE_MULTIBLOCK_READ_COUNT 3.Full table scans 4.fast full index scans 解决方法: 1.优化多块读I/O,设置DB_FILE_MULTIBLOCK_R原创 2015-10-22 15:49:33 · 799 阅读 · 0 评论 -
db file sequential reads
db file sequential read等待事件触发,当执行single-block read 操作通过索引,rollback(or undo)段,表通过rowid访问,控制文件或者是数据文件头 可能的原因: 1.使用可选择性不高的索引 2.索引碎片化 3.高I/O在特别的磁盘和挂载点 4.糟糕的应用设计 5.慢的I/O或者是糟糕的数据库文件分布都影响索引读取性能,导致的原创 2015-10-22 15:02:49 · 545 阅读 · 0 评论 -
log file parallel write
可能的原因: 1.LGWR等待写redo log buffer 内容到 online log files 解决方法: 1.减少redo日志的生成量 2.不要将表空间置于热备份模式大于需要的时间 3.不要将redo log files 放在RAID 5上 4.redo log files使用更快的磁盘 5.确保archived log files 和 online redo l原创 2015-10-22 16:07:37 · 1160 阅读 · 0 评论 -
buffer busy waits
可能的原因: 1.Buffer busy waits通常出现在I/O繁重的oracle系统 2.主要两个原因: 1).另一个会话正在读块到buffer cache 2).另一个会话正在持有buffer在一个不兼容的模式 3.这个等待表明读读,读写,写写竞争 4.oracle 会话正在等待PIN 一个buffer,一个buffer必须pin在它读或者修改之前,但是同时只能一个进程原创 2015-10-23 09:52:45 · 931 阅读 · 0 评论 -
free buffer waits
可能的原因: 1.free buffer waits的意思是我们正在等待一个free buffer,但是在cache buffer里面没有可用的,因为很多脏块在cache里面 2.可能是buffer cache太小或者是dbwr进程写脏块太慢 3.dbwr不能跟上写的请求 4.checkpoint频率太快,可能是数据库活动比较频繁或者是redo log file 太小,因为日志切换会产生c原创 2015-10-23 10:25:42 · 1112 阅读 · 0 评论 -
log file sync
可能的原因: 1.oracle 前台进程正在等待commit或者rollback完成 解决方法: 1.调优LGWR到一个高吞吐量的磁盘,不要将redo logs放在RAID5上面 2.减少commit次数 --本文乃原创文章,请勿转载。如须转载请详细标明转载出处原创 2015-10-22 16:13:55 · 593 阅读 · 0 评论 -
enqueue waits
可能的原因: 1.等待事件表明正在请求一个其他会话持有的不兼容的锁 TX Transaction Lock 1.通常是由于表或者应用设置的问题 2.这个表明竞争一个row-level lock,等待发生在当一个事物试图去更新或者删除被另一个事物锁定的行 3.通常是应用的问题 TM DML enqueue lock 1.通常是应用的问题 2.特别如果是外键约束没有加原创 2015-10-26 10:54:41 · 524 阅读 · 0 评论