awr报告基础

awr报告基础

study oracle基础

awr

1. awr是什么

awr是oracle 10g后提供的一种性能收集和分析工具,它能够提供一个时间段内整个系统资源使用情况的报告。

2. awr生成方式

修改awr生成时间,保存周期

-- interval  快照间隔,单位是分钟
-- retention 快照保留周期,单位是分钟
execdbms_workload_repository.modify_snapshot_settings(interval=>60,retention=>7*2*24*60);

手工生成

注:生成当前时间awr

-- 生成当前时点awr报告,后续使用awr生成命令
exec dbms_workload_repository.create_snapshot();

生成方式

SQL>@?/rdbms/admin/awrrpt

3. 分析awr

用处:通过awr报告可以:1)查看系统的负载和繁忙程度;2)查看系统的瓶颈,发生的等待事件;3)查看可优化的sql;

3.1 Report Summary(报告摘要):

1、SESSIONS:实例连接的会话数,数据库大概的并发用户数;

2、cursors/session:每个会话平均打开的游标数;

3、DB time:用户操作花费的时间的合集,包括CPU时间和等待事件;

4、cache sizes:列举awr在性能采集开始和结束的时候,数据缓冲池和共享池的大小,可以了解系统内存消耗的变化,可以判断SGA的内存分配是否合理;

5、load profile:数据库资源负载的一个明细列表,用来判断系统的繁忙程度。分割为每秒钟的资源负载和每个事务的资源负载情况。

6、Instance Efficiency Percentages:内存效率的统计信息,对于OLTP系统,应尽可能的接近100%。如果哪个数据偏低,就要做相关的分析研究。

1)buffer nowait:非等待方式获取数据库;

2)redo nowait:非等待方式获取redo数据;

3)buffer hit:内存数据块命中率;

4)in-memory sort:数据块在内存中排序的百分比;

5)library hit:共享池中sql解析的命中率;

6)execute to parse:执行次数对分析次数的百分比;

7)latch Hit:latch命中率百分比;

8)parse cpu to parse elapsed:解析总时间中消耗CPU的时间百分比;

9)non-parse cpu:cpu非分析时间在整个cpu时间的百分比;

7、TOP 5 TIMED EVENTS:查看最高5个耗费时间及等待事件,要联系报告的采集周期来看耗费时间是否合理。一般来说,CPU time出现在TOP5中的第一位,并且消耗时间占总时间的大部分比例。可以说明系统在正常运行。

对于ORACLE常见的等待事件可参考oracle常见的等待事件说明

以上这部分就是awr报告的总体概要,是需要重点关注的部分,根据这些信息可以知道等待时间比较长的事件,然后根据这些事件,去下面具体的部分查找问题原因。

3.2 Wait Events Statistics:

1、Time Model Statistics列出了各种操作占用的数据库时间比例;

2、Foreground Wait Class列出了等待事件类型,可以看到等待时间最长的事件;

3、Foreground Wait Events是第一部分TOP 5 TIMED EVENTS的详细部分;

4、Background Wait Events实例的后台进程等待事件;

3.3 SQL Statistics:

1、SQL ordered by Elapsed Time:按照sql的执行时间从长到短的排序;

1)CPU time:sql消耗的CPU时间;

2)elapsed time:sql执行时间;

3)executions:sql执行的次数;

4)elapsed per exec:每次执行消耗的执行时间;

2、SQL ordered by CPU Time:按照sql的CPU时间从长到短排序:

3、SQL ordered by User I/O Wait Time

4、SQL ordered by Gets:按照sql获取的内存数据块的数量排序:

5、SQL ordered by Reads:按照sql执行物理读排序:

6、SQL ordered by Physical Reads (UnOptimized)

7、SQL ordered by Executions:按照sql的执行次数的排序;

8、SQL ordered by Parse Calls:按照sql被分析次数(不区分软解析还是硬解析)的信息排序;

9、SQL ordered by Version Count:sql产生多版本的信息;version count是sql的版本数;

以上指标孤立起来看都没有实际意义,需要看系统的类型和性能问题是什么方面,有侧重的进行分析。例如SQL ordered by Executions和SQL ordered by Parse Calls对OLTP比较重要,而OLAP系统不需要太关注。

3.4 Instance Activity Statistics:

cpu used by this session:oracle消耗的cpu单位,可以看出cpu的负载情况;如果total为1000,per sec 为80,cpu个数为2;

那么就是整个统计周期消耗了1000个cpu单位,每秒钟消耗了80个cpu单位,对应实际的时间是80/100=0.8秒;每秒钟每个cpu消耗80/2=40个cpu单位;每秒钟中每个cpu处理使用的时间是40/100=0.4秒。

3.5 IO Stats:

Tablespace IO Stats:表空间的IO性能统计;

File IO Stats

1)reads:发生了多少次物理读;

2)writes:发生了多少次写;

3)Av reads:每秒钟物理读的次数;

4)Av Rd:平均一次物理读的时间;

5)Blks/Rd:每次读多少个数据块;

6)Av writes:每秒钟写的次数;

7)buffer waits:获取内存数据块等待的次数;

segments by logical readssegment by physical reads从对象角度来展现了IO情况,分析这两部分信息,可以具体知道哪些对象的访问导致了IO性能下降。

ASH



部分内容摘自ORACLE AWR性能报告和ASH性能报告的解读

原文地址:https://www.cnblogs.com/andymdcc/p/9163785.html

时间: 2024-08-30 15:42:39

awr报告基础的相关文章

(转载)Oracle AWR报告指标全解析

Oracle AWR报告指标全解析 2014-10-16 14:48:04 分类: Oracle [性能调优]Oracle AWR报告指标全解析 2013/08/31 BY MACLEAN LIU 26条评论 [性能调优]Oracle AWR报告指标全解析 开Oracle调优鹰眼,深入理解AWR性能报告:http://www.askmaclean.com/archives/awr-hawk-eyes-training.html 开Oracle调优鹰眼,深入理解AWR性能报告 第二讲: http:

使用AWR报告来诊断数据库性能问题

对于数据库整体的性能问题,AWR的报告是一个非常有用的诊断工具. 一般来说,当检测到性能问题时,我们会收集覆盖了发生问题的时间段的AWR报告-但是最好只收集覆盖1个小时时间段的AWR报告-如果时间过长,那么AWR报告就不能很好的反映出问题所在. 还应该收集一份没有性能问题的时间段的AWR报告,作为一个参照物来对比有问题的时间段的AWR报告.这两个AWR报告的时间段应该是一致的,比如都是半个小时的,或者都是一个小时的. 关于如何收集AWR报告,请参照如下文档: Document 1363422.1

一份11gR2 rac awr报告的简单分析

昨晚网友发来一份awr报告,希望帮忙分析一下.由于其他信息都没有,仅仅只有一份awr,鉴于目前有大多的朋友还不太熟悉或者说不知道如何去进行awr的分析.我这里就拿这个awr来进行分析,当抛砖引玉了.首先申请,网上分析awr的文章不少,大家也都可以参考一下. 首先来看awr前面部分信息,了解下系统的版本,以及大概判断下系统负载如何. 从上面信息我们可以得出如下结论:—-数据库是一套11.2.0.2的RAC—-Solaris 64bit环境,48c—-每个cpu 的可用处理时间是3591.6 s,

ORACLE AWR报告数据的导入导出实践

关于AWR的快照数据可以导出.导入,一直没有亲手实践过.今天动手测试了一下如何导出.导入AWR数据,将AWR的数据从一测试服务器,导入到另外一台测试服务器. SQL> @?/rdbms/admin/awrextr.sql ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Disclaimer: T

关于AWR报告的解析

其实,网上关于AWR的解析已经足够多了.但总觉得通过收集资料,再加工写出来的资料能便于自己理解其中的各项内容,因此我对AWR进行一篇详尽的解析.希望能分几次完成 从AWR报告的第一部分包含了数据库的名称.数据库的ID号.实例名.实例数.启动的时间.数据库版本和是否为RAC.此外也包含了系统的部分信息. 该部分最关键的内容是第三个模块,里面记录了snapshot的开始时间和结束时间,以及数据库运行时间和用户级别调用(session)所消耗的时间. DB CPU:Amount of CPU time

提取oracle awr报告

做性能测试时有时需要分析sql的执行情况,以找出需要优化的sql,oracle数据库就提供了很好的数据库状态和sql执行情况的监控平台,数据库的监控平台可以时时的监控数据库的状态,同时还可以取监控的时间段生成awr报告,来分析指定时间段的数据库的运行状态. awr报告其实就是取的数据库中两个快照之间数据,形成了一个报告的形式,通过数据的方式更加直观的展示所选两个快照之间数据库的运行状态. awr报告的提取方式我知道的有两种,一种是通过命令行提取,一种是从oracle数据库的控制台中指定两个快照来

ORACLE AWR报告生成步骤

ORACLE AWR报告生成步骤 (以PL/SQL中命令窗口为例) 1.sqlplus或plsql的commod窗口(命令窗口)运行命令 @D:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\awrrpt.sql; -- 具体地址,需要查询得到 --然后在弹出的对话框中输入选择的导出格式html或者txt,一般用html,生成的报告用浏览器查看比较方便. 2.在弹出的对话框中输入数字选择制定选择快照的数量 3.在接下来弹出的对话框中分别选择最小和最大snap_id

Oracle 获取awr报告

1 登录Oracle用户  su - oracle 2 进入 SQLplus ,扫行 @awrrpt.sql .这里注意,要指定 awrrpt.sql脚本路径,所以建议一开始就进到指定目录这样方便些 cd /u01/app/oracle/product/11.2.0/db_1/rdbms/admin/ 这里有个小技巧,  admin下有很多脚本,用于生成不出的报告, 比如 ashrpt.sql  用于生成 ASH报告. 文件名是用 报告名称缩写+rpt.sql 方式命名的. 3 指定报告格式和时

Oracle AWR报告提取方法

本文旨在用来指导项目人员自行提取Oracle数据库的AWR报告. 1.当前连接实例的AWR报告提取:@?/rdbms/admin/awrrpt 2.RAC的其他实例AWR报告提取:@?/rdbms/admin/awrrpti 3.手工生成一个快照 1.当前连接实例的AWR报告提取:@?/rdbms/admin/awrrpt SQL> @?/rdbms/admin/awrrpt //注意输入的@?/rdbms/admin/awrrpt 中间没有任何空格,需要在数据库服务器上Oracle用户登陆,s