AWR实战分析之----buffer busy waits
来源:互联网 发布:淘宝内容营销案例 编辑:程序博客网 时间:2024/06/06 04:26
早上在巡检数据库时,发现报表数据库DB Time有些异常,获取当时AWR报告,发现一个新的等待事件buffer busy waits,记录一下排查分析过程,详细信息如下:
从数据库负载和会话数量上看,数据库没什么问题,但是从TOP 5上我们看到了一个新的等待事件
有点不太好理解,说的简单的,后来经过自己的理解,我给出一种解释,可以简单理解为热块问题,通常发生在频率插入或更新的情况,因为插入时数据可以多次往同一块写入,特别是索引,插入引起块的分裂,产生热块,是不是这样的呢?我们做一下查询我后和AWR中的TOP SQL进行验证。
--查询快照期间发生该等待事件的SQL和BLOCKING SQL
SELECT sql_id,
产生该等待事件的SQL_ID为:cw6a7w8u5awwf,然后跟据BLOCKING_SESSION信息查询SQL_ID
select distinct sql_id
结果显示SQL_ID为:404qaurwrsnva
看来我们只需要找到 cw6a7w8u5awwf、404qaurwrsnva两个SQL到底在做什么就可以了,现在我们来看AWR报告中TOP SQL部分
很显然,两条都在多次进行插入操作,验证了我们前面的分析,另外,此类等待事件我们需要关注AWR中的如下模块:
综合分析来看,两条SQL执行的操作刚好就是这部分中的表,和该表上的两个索引,至此问题就分析出来了,难点是怎么去解决掉它?
因为我这个案例是逻辑DG,受到操作限制,那么我想避免该类等待事件的操作有两种方法
第一:将普通表做成分区表
第二:将定期将索引删除并重建
第三:调整表和索引pctfree参数,减少同一块中数据记录行数
- AWR实战分析之----buffer busy waits
- Buffer busy waits
- Oracle buffer busy waits
- oracle buffer busy waits
- buffer busy waits
- buffer busy waits
- buffer busy waits
- buffer busy waits
- buffer busy waits
- buffer busy waits
- buffer busy waits理解
- buffer busy waits
- free buffer waits,buffer busy waits
- 等待事件 - buffer busy waits
- Buffer busy waits事件,整个过程
- 等待事件buffer busy waits
- buffer busy waits等待事件
- 深入解析buffer busy waits
- 二分图最大独立集
- 大话数据结构(三)——单向循环链表的java实现
- 逆元(清北 算)
- Windows python 环境之快速搭建及访问
- PHP程序员要想在北京买房你得狠
- AWR实战分析之----buffer busy waits
- 绘制像素到屏幕上
- shell特殊变量
- 同余方程(扩展欧几里得)
- transient和@Transient的使用
- 一道Java面试题,由于catch 捕获异常的原理
- d3.js d3.scale.ordinal() --详解 rangeBands
- 青蛙的约会(扩展欧几里得)
- OpenGL读取Obj模型文件