1 抬高水位点,减少buffer busy waits
2 集群一个节点归档日志满,导致事务产生大量的buffer busy waits、
1 处理方案
1 抬高HW,减少buffer busy waits
2 HASH分区打散数据,减少buffer busy waits
2 原因 :
1.其它会话正在将数据块读入buffer
2.其它会话以排它模式持有buffer
2 日志写性能低导致大量的buffer busy waits,
修改一个buffer步骤:
1 申请独享cbc latch,遍历 buffer chain查找到buffer bh。
2 在cbc保护表修改buffer pin锁为X。
3 释放cbc lach。生成redo 数据。
4 修改buffer内容。
5 申请cbc latch ,修改buffer pin锁。
6 释放独占的X buffer pin锁。
7 释放cbc latch。
3 优化逻辑度较大的语句。
2 ORACLE之读不堵塞写分析
A进程读取5号文件的1234数据块,B进程需要修改5号文件1234数块,过程分析如下:
如果此时有进程C 需要读取5号文件的1234块,就需要进行等待,---buffer busy waits,操作单位为(以块为单位)