五大报告关注点

f3a1f721c4120aa30f418638cad01d49527.jpg

f6da8e24766185717d2429cf94cba642fc8.jpg

 

6fb066453b22d41911e2bbe4102c06c5e5e.jpg

一、AWR报告关注点主要从6个指标入手:

  • DB Time;
  • load_profile;
  • efficiency percentages;
  • top 5 events
  • SQL Statistic
  • Segment_statistic

1)DB Time 主要用来判断当前系统有没有遇到相关瓶颈。一般Elapsed时间乘以CPU个数的时间如果结果大于DB time,我们认为系统压力不大,反之则压力较大。

44a0b0c34e23b03d8e5b29ad6bcc6585134.jpg

2)load_profile 这个指标主要用来展现当前系统的一些指示性能的总体参数,比如

redo size就是用来显示平均每秒的日志尺寸和平均每个事物的日志尺寸,结合Transactions 这个每秒实务数的指标,就可以分析出当前实务的繁忙程度。

下图1每秒有2,563.9个事物数,这在现实中几乎不可能,现实中的运营商系统一般在200上下比较正常,超过1000就属于非常繁忙了。

abcb828a24a014ba5831f65d889637fe9ae.jpg

                                 图1 单次提交awr

 

ca8c59e736e51995c8eabbdbdce9775d461.jpg

                                     图2 批量提交awr

图2每秒有0.7个事务,平均每个事务产生的日志尺寸是6位数,说明系统是一个提交不频繁的处理大任务时间的系统。

根据而图1的每个事务的日志尺寸,说明系统是一个提交非常频繁且每个事务都非常小的密集提交系统。

 

3)efficiency percentages是一些命中率指标,其中Buffer Hit、Library Hit等都表示SGA的命中率。在Soft Parse指标表示共享池的软解析率,在OLTP系统中如果该指标低于90%应当引起注意。表示存在未使用绑定变量的情况。

e43403c9efd0a8cdaf404eea903ae3c0324.jpg

 

4)top 5 events 等待事件是衡量数据库整体优化情况的重要指标,通过观察Top 5 Timed Foreground Events 模块的Event 和% DB time 可以非常直观

地看出当前数据库面临的主要等待事件是什么。

44807b1f7ed9c6cfab98cce21e4005f2f5c.jpg

A)log file sync( 日志文件同步)

当一个用户提交或回滚数据时, LGWR 将会话期的重做由 Log Buffer 写入到重做日志中,LGWR 完成任务以后会通知用户进程。 日志文件同步等待( Log File Sync) 就是指进程等待LGWR 写完成这个过程, 对于回滚操作,该事件记录从用户发出 rollback 命令到回滚完成的时间。

如果该等待过多,可能说明 LGWR 的写出效率低下,或者系统提交过于频繁。

针对该问题,可以关注:
log file parallel write等待事件
user commits,user rollback等统计信息可以用于观察提交或回滚次数

解决方案:
1.提高LGWR性能
尽量使用快速磁盘,不要把redo log file存放在raid 5的磁盘上
2.使用批量提交
3.适当使用NOLOGGING/UNRECOVERABLE等选项

可以通过如下公式计算平均redo写大小:

avg.redo write size = (Redo block written/redo writes)*512 bytes

如果系统产生redo很多,而每次写的较少,一般说明LGWR被过于频繁的激活了.

B)control file sequential read

Reading from the control file. This happens in many cases. For example, while:

1、Making a backup of the control files

2、Sharing information (between instances) from the control file

3、Reading other blocks from the control files

4、Reading the header block

该等待事件并不表明数据库有问题。一个健康的系统,物理读事件应是除空闲等待事件外的最大等待事件。而该事件在RAC中尤其明显,依照经验来看,在一个正常的RAC集群中,该事件应该排在top10中,因为实例间共享同一份控制文件,对控制文件读取是很频繁的,如果被其他等待事件挤出前10了,那就得看看是哪些等待事件了。

其次,可以查看AWR报告该事件的等待次数,平均等待时间,最大等待时间等信息进行进一步确认。看看这些信息比起日常AWR报告信息是否有明显的异常。

C)db file sequential read:如果这个等待事件比较显著,可能表示在多表连接中,表的连接顺序存在问题,没有正确地使用驱动表;或者可能索引的使用存在问题,并非索引总是最好的选择。 在大多数情况下, 通过索引可以更为快速地获取记录,所以对于一个编码规范、调整良好的数据库,这个等待事件很大通常是正常的。 有时候这个等待过高和存储分布不连续、连续数据块中部分被缓存有关,特别对于 DML 频繁的数据表,数据以及存储空间的不连续可能导致过量的单块读,定期的数据整理和空间回收有时候是必须的

db file sequential read的优化方法:

从读取开始,增加SGA中buffer cache的大小,避免每次都从硬盘中去读数;

优化sql语句,减少不必要的块读取

 

 

5)SQL Statistic 分别从几个维度来罗列出TOP的SQL,这是一种简单粗暴但有效的办法。看看执行时长,直接拿出来优化一般都是对的做法。

c3303f4f2e597291bd3d03c12fb0ebfd067.jpg

 

6)Segment_statistic也是一个非常直接的优化手段。当我们知道繁忙落在数据库的那个标段是索引时,优化就变得相对简单了,比如最简单粗暴的方法就是对表和索引进行数据清理和瘦身。

032fab07e248e71377ad7b0ae85b096384c.jpg

 

de2511abe1c4ee688032835f279f0ace195.jpg

二、ASH关注点

ASH报告打开直接看哪些SQL和哪些等待时间是相关联的。

baaeece5b21aa510282a19d69eb7fc1ccab.jpg

 

三、ADDM的关注点

  基本上从FINDING 1、FINDING 2顺序往下看就可以了,一般是从数据库整体配置和局部SQL两方面给出建议。

四、AWRDD的关注点

比较指标的变化,基本就是AWR关注什么,AWRDD就关注什么

1)不同时期load profile 的比较

78755e13de3799fc2729a0c2b40946ea41c.jpg

 

2)不同时期等待事件的比较

3cf59f71e980a6edc4575a7ad3203be0ffd.jpg

3)不同时期TOP SQL的比较

44d5bb8dacf5d591d214f25981016cb63bc.jpg

6e27c5a6a339a36414799b9cb7c2066aea3.jpg

五、AWRSQRPT的关注点

1)Plan statistics

2)Execution Plan

3)是否有多个执行计划

 

c9acd525291ba3a99e7ab5159747a2bed28.jpg6d2783d804fa3076629d32336a90169324e.jpg

 

 

 

转载于:https://my.oschina.net/liubaizi/blog/3015574

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值