% Blocks changed per Read: Rollback per transaction %: Recursive Call %: Rows per Sort:
7.3
XXXX
各项命中率
Instance Efficiency Percentages (Target 100%)
Buffer Nowait %: Buffer Hit %: Library Hit %: Execute to Parse %: Parse CPU to Parse Elapsd %: Redo NoWait %: In-memory Sort %: Soft Parse %: Latch Hit %: % Non-Parse CPU: YYYY
Instance Efficiency Percentages (Target 100%)
Buffer Nowait %: Buffer Hit %: Library Hit %: Execute to Parse %: Parse CPU to Parse Elapsd %: Redo NoWait %: In-memory Sort %: Soft Parse %: Latch Hit %: % Non-Parse CPU: 7.4
等待事件
列出最主要的等待事件: XXXX
Event Waits Time(s) Avg Wait(ms) % Total Call Time Wait Class YYYY
Event Waits Time(s) Avg Wait(ms) % Total Call Time Wait Class
7.5 统计信息分析
我们选取业务最为繁忙的上午时段的AWR报告进行分析。 一、
关于CPU数据库使用情况
健康检查报告 第21页
CPU used by this session parse time cpu recursive cpu usage Total per Second per Trans 分析:
可以看出系统CPU主要用于SQL语句的真正的执行阶段。
二、 关于数据库事务提交/会滚性能指标
user calls user commits user rollbacks Total per Second per Trans 分析:
在实例快照统计中,用户回滚率正常。
7.6 数据库I/O性能
1、 本数据库的数据文件绝大部分的平均的读取时间<20ms,表示当前的数据库I/O速度是可以接受的,如果有一
些数据文件的平均读取时间大于20ms,需要引起注意。 2、 ORACLE认为平均读取时间大于20ms是I/O性能比较差的,如果一个数据文件的平均读取时间一直大于
20ms的话,建议:
应该检查对该数据文件上的查询语句,并且优化SQL语句。
如果该数据文件包含索引,一个可以考虑的选择是使用压缩索引来减少I/O。 数据文件应该尽量条带化,分布在不同的物理硬盘上面。
7.7 索引
索引/行迁移/行链
索引需要维护。对于表的删除或者添加操作都会间接地对索引进行相应操作。过时的索引结构会产生碎片,此时索引需要被重新建立。
当前数据库中未发现需要重建的索引。
行链
当一条记录太大,一个数据块无法将其存储时,oracle 就会将其存储在相链接的块中。如果一条记录中含有数据类型如:LONG,LONG RAW,LOB,行链则无法避免。
健康检查报告 第22页
行迁移
当一个数据块已满,而一条记录在更新后记录长度增加了,这时oracle 就会将整个记录迁移到一个新的数据块,这就是行迁移。Rowid 在行迁移之后保持不变。除大数据类型之外,上述情况对数据库的性能是有影响的。从上面实例活动统计部分的table fetch continued row分析可以看出当前数据库中链接行的多少。 关于行迁移/行链接统计信息
Total per Second per Trans
目前行链接较少,但是仍需关注,是否行链接集中在特定的segment,以及是否属于不可避免的行链接情况。 建议:
为避免或者尽量减少出现行链接/行迁移的可能,建议适当增大表、表分区的pctfree存储参数。
7.8 Enqueue等待分析
在统计报告中的TOP5 event中均没有出现Enqueue等待事件,说明Enqueue等待不是系统的性能瓶颈,性能良好。
7.9 Latch分析
在数据库的latch命中率为n%以上,符合要求。
7.10 Resource Limit分析
下面列出了出现在Resource limit统计的Resource情况,需要客户和应用开发厂家根据业务情况评估是否需要调整:
Resource Name Current Utilization Max Utilization Initial Allocation Limit Value 健康检查报告 第23页
7.11 Top SQL语句
列出最消耗系统逻辑IO(Buffer Gets)的三条SQL语句:
Buffer Gets Executions Gets per Exec %Total CPU Time (s) Elapsed Time (s) SQL Id SQL Module SQL Text
建议:
1、 使用explain plan去分析TOP SQL的执行计划,找出消耗资源较高的原因。
健康检查报告 第24页