
oracle wait events
cloudsnowe
force on oracle
展开
-
db file scattered read
db file scattered read可能的原因:1.oracle会话请求正在等待从磁盘读取数据到多个不连续的内存区域。2.通常是多块读,DB_FILE_MULTIBLOCK_READ_COUNT3.Full table scans4.fast full index scans解决方法:1.优化多块读I/O,设置DB_FILE_MULTIBLOCK_R原创 2015-10-22 15:49:33 · 846 阅读 · 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 · 603 阅读 · 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 · 1215 阅读 · 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 · 980 阅读 · 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 · 1229 阅读 · 0 评论 -
log file sync
可能的原因:1.oracle 前台进程正在等待commit或者rollback完成解决方法:1.调优LGWR到一个高吞吐量的磁盘,不要将redo logs放在RAID5上面2.减少commit次数--本文乃原创文章,请勿转载。如须转载请详细标明转载出处原创 2015-10-22 16:13:55 · 639 阅读 · 0 评论 -
enqueue waits
可能的原因:1.等待事件表明正在请求一个其他会话持有的不兼容的锁TX Transaction Lock 1.通常是由于表或者应用设置的问题2.这个表明竞争一个row-level lock,等待发生在当一个事物试图去更新或者删除被另一个事物锁定的行3.通常是应用的问题TM DML enqueue lock1.通常是应用的问题2.特别如果是外键约束没有加原创 2015-10-26 10:54:41 · 563 阅读 · 0 评论