Oracle 11g AWR和ADDM性能报告
一、自动工作负载库(Automatic Workload Repository,AWR)
自动工作负载库(Automatic Workload Repository,AWR)是在Oracle公司提供的一个工具。AWR来可以自动收集、处理、并保存性能统计结果,这种统计数据存放在内存中并随后存储在数据库中,这些数据既能在报告中显示也可以通过视图查询。可以协助我们找出Oracle的性能瓶颈。
AWR收集和处理的统计数据包括:
- 对象统计,用于确定数据库段(表、索引…)的访问情况
- 基于时间的统计:数据库活动统计,这些统计参数通过V$SYS_TIME_MODEL和V_SESS_TIME_MODEL 查询;
- 系统统计:基于系统和会话的统计,这些统计数据可以通过V$SYSSTAT和V$SESSTAT 查询。
- SQL统计:系统中造成高的负载的SQL,这些SQL使用了长的执行时间和CPU时间;
- 激活会话历史(ASH)统计:激活会话信息的历史记录,记录了最近的会话活动历史
AWR将每小时自动抓取一次性能统计数据,并将抓取的性能快照记录在工作载荷记录的代理表中。AWR快照也可以人工创,只是通常不必要这样做。快照抓取后,抓取的结果将由自动数据库诊断监视器( ADDM )分析。
在AWR抓取SQL信息时,AWR将比较以前抓取的SQL语句对性能的影响,并据此有目的的捕捉SQL语句,因此这样的做法减少了需要捕捉的SQL语句。
自动工作负载库(AWR)快照将存储在数据库中,这需要存储空间,其存储空间占用取决于下面的几个因素:
- 当前连接Oralce的激活会话的数目,数目越多,则AWR信息越多;
- AWR快照抓取间隔,默认一小时抓取一次。抓取频率增加,则存储空间占用越多。
- 历史数据的保持期限。显然,保留时间越长,空间占用越多。
缺省的快照捕捉间隔为每小时一次,记录在数据库中保存7天。调整自动工作负载库(AWR) 的快照间隔和保持时期,则其空间占用将降低。但当减少保持期时,例如自动数据库诊断监视器(ADDM)、SQL调节顾问、重做顾问、段顾问等。
为了统计结果尽可能客观、尽可能反映真正的业务载荷分布情况,我们最好将AWR保持期延伸到业务系统运行的一个完整周期。例如,如果业务系统的作业特点是周一到周五作业务,周六、日进行报表操作,则7天是你完整的一个工作周期。同理,你的工作周期可能是一个月,一个季度。由于存储介质的造价在目前的数据库系统环境中已经算是很小的一部分,因此,AWR统计的存储代价并不很高,以存储至少一个业务周期为宜。
1、AWR的启用
默认情况下Oralce启用数据库统计收集功能,可使用
SQL> show parameter statistics_level
NAME TYPE VALUE
statistics_level string TYPICAL
如果statistics_level的值为TYPICAL或者ALL,表示启用AWR; 如果statistics_level的值为BASIC,表示禁用AWR
2、查看当前的AWR保存策略
select * from dba_hist_wr_control;
DBID,SNAP_INTERVAL,RETENTION,TOPNSQL
860524039,+00 01:00:00.000000,+07 00:00:00.000000,DEFAULT
以上结果表示,每小时产生一个SNAPSHOT,保留7天
调整AWR产生snapshot的频率和保留策略,如:如将收集间隔时间改为30 分钟一次。并且保留5天时间(注:单位都是为分钟):
dbms_workload_repository.modify_snapshot_settings(interval=>30, retention=>5*24*60);
3、手工创建一个快照
exec DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT ();
4、查看快照
select * from sys.wrh$_active_session_history
5、产生AWR报告
AWR报告其实就是一张数据库健康体检表,它显示了数据库健康的各项指标需要sysdba权限
1.生成整个数据库的AWR 报告:
@$ORACLE_HOME/rdbms/admin/awrrpt.sql
2.生成 Oracle RAC AWR 报告:
@$ORACLE_HOME/rdbms/admin/awrgrpt.sql
3.生成 RAC 环境中特定数据库实例的 AWR 报告:
@$ORACLE_HOME/rdbms/admin/awrrpti.sql
4.生成 Oracle RAC 环境中多个数据库实例的 AWR 报告的方法:
@$ORACLE_HOME/rdbms/admin/awrgrpti.sql
5.生成 SQL 语句的 AWR 报告:
@$ORACLE_HOME/rdbms/admin/awrsqrpt.sql
6.生成特定数据库实例上某个 SQL 语句的 AWR 报告:
@$ORACLE_HOME/rdbms/admin/awrsqrpi.sql
--生成 AWR 时段对比报告
7.生成单实例 AWR 时段对比报告
@$ORACLE_HOME/rdbms/admin/awrddrpt.sql
9.生成 Oracle RAC AWR 时段对比报告
@$ORACLE_HOME/rdbms/admin/awrgdrpt.sql 生成AWR的全过程:二、性能检测器 (Automatic Database Diagnostic Monitor ADDM)
http://www.cnblogs.com/hibernate315/archive/2010/05/28/2399259.html
Oracle 11g AWR和ADDM性能报告的更多相关文章
- Oracle 11g AWR 系列五:如何生成 AWR 报告?
1.生成单实例 AWR 报告: @$ORACLE_HOME/rdbms/admin/awrrpt.sql 2.生成 Oracle RAC AWR 报告: @$ORACLE_HOME/rdbms/adm ...
- Oracle 11g AWR生成报告
1.生成单实例 AWR 报告: @$ORACLE_HOME/rdbms/admin/awrrpt.sql 2.生成 Oracle RAC AWR 报告: @$ORACLE_HOME/rdbms/adm ...
- 理论实践:循序渐进理解AWR细致入微分析性能报告
1. AWR 概述 Automatic Workload Repository(AWR) 是10g引入的一个重要组件.在里面存贮着近期一段时间内(默认是7天)数据库活动状态的详细信息. AWR 报告是 ...
- ORACLE AWR性能报告和ASH性能报告的解读
数据库的性能分析可分为会话级和系统级:如果确定某个会话存在性能问题,最常见的分析方式是对这个会话做一个SQL_TRACE或者10046事件,通过分析trace文件来定位问题所在.如果无法确定哪个会话性 ...
- oracle中awr性能报告阅读笔记
1.对于数据库运行的业务不太了解,那么awr性能报告中最需要关注的是Top 5 Timed Foreground Events和Time Model Statistics两个部分
- Oracle 11g 中SQL性能优化新特性之SQL性能分析器(SQLPA)
Oracle11g中,真实应用测试选项(the Real Application Testing Option)提供了一个有用的特点,叫SQL性能分析器(SQL Performance Analyze ...
- 盘点 Oracle 11g 中新特性带来的10大性能影响
Oracle的任何一个新版本,总是会带来大量引人瞩目的新特性,但是往往在这些新特性引入之初,首先引起的是一些麻烦,因为对于新技术的不了解.因为对于旧环境的不适应,从Oracle产品到技术服务运维,总是 ...
- oracle ash性能报告的使用方法
活动会话历史报告活动会话历史v$active_session_history视图提供了在实例级别抽取会话活动信息.活动会话每分钟会被抽样一次且被存储在sga中的循环缓冲区中.任何被连接到数据库且正等待 ...
- Oracle 11g R2性能优化 tkprof
另一篇博文总结了关于SQL TRACE工具的使用方式,但是产生的trace文件格式阅读起来并不是十分友好,为了更好的分析trace文件,Oracle也自带了一个格式化工具tkprof.tkprof工具 ...
随机推荐
- bs结构socket(udp)通信
以前我所做的基于socket通信都是采用cs结构,现公司有一个项目需要在bs中反控设备,于是研究了一番,现将成果公布,方便以后查阅. 服务端: #region udp int recv; byte[] ...
- JAVA 编码中文简述
中文编码问题虽然是个老问题,但对不熟悉的人来说还是不好处理的.不过Java中已经有了一套比较成熟的解决方案. 首先对中文编码格式予以简单介绍:中文编码有三套国标:GB2312,GBK,GB18030, ...
- StatisticalOutlierRemoval源码
源代码 * * Software License Agreement (BSD License) * * Point Cloud Library (PCL) - www.pointclouds.org ...
- AS2使用ExternalInterface
以下代码是帧脚本(选中某帧F9,粘贴) import flash.external.ExternalInterface; // 假的,目的是为了执行createButton里面的ExternalInt ...
- IOS开发-CALayer和UIView详细汇总
1. CALayer和UIView之间的关系: 在iOS系统中,你能看得见摸得着的东西基本上都是UIView,比如UI控件.图标等等,都是UIView. 其实UIView之所以能显示在屏幕上,完 ...
- oracle直通车第二周习题
1.教材第二章课后作业 1,2,3,4题. 答:1. 创建一查询,显示与Blake在同一部门工作的雇员的项目和受雇日期,但是Blake不包含在内. 2. 显示位置在Dallas的部门内的雇员姓名.变化 ...
- GC之六--SystemGC完全解读
概述 JVM的GC一般情况下是JVM本身根据一定的条件触发的,不过我们还是可以做一些人为的触发,比如通过jvmti做强制GC,通过System.gc触发,还可以通过jmap来触发等,针对每个场景其实我 ...
- 用Visual Studio调试Windows和驱动程序
由于本人能力有限,翻译不足之处敬请谅解,欢迎批评指正:sunylat@163.com Visual Studio版本:Visual Studio 2015企业版,中文环境. MSDN原文:https: ...
- [ActionScript 3.0] 喷泉效果
pall为水珠影片剪辑 var count:int = 500; var zl:Number = 0.5; var balls:Array; balls = new Array(); for (var ...
- [ActionScript 3.0] AS3.0 复制xml,并赋值
var template:XML= <person><name><first>FIRST</first><last /></name& ...