Automatic Workload Repository(AWR)收集、处理和维护性能系统信息,为性能调优的问题检测提供了有力的帮助。
AWR收集和处理的统计信息包括:
1. 段的统计信息;
2. 时间模型统计信息(在v$sys_time_model和v$sess_time_model视图中查看);
3. 一些在v$sysstat和v$sesstat视图中收集的系统和会话的统计信息;
4. 系统中负载最高的一些sql语句,分别按执行时间、cpu时间、执行次数等标准来统计
5. ASH统计信息,包含近期会话活动的历史记录
若系统参数STATISTICS_LEVEL设置为TYPICAL或ALL将默认启用AWR来采集数据库统计信息。这个参数的默认值是TYPICAL,若将其设置为BASIC,将禁用很多Oracle数据库功能,包括 AWR,但你仍可以通过DBMS_WORKLOAD_REPOSITORY包来手动获得AWR统计信息。但是,由于许多内存中的统计信息(比如段统计信息和内存顾问信息)会被禁用,快照中获得的统计信息可能不完整。
关于AWR报告的各项指标详解,请参见:http://download.youkuaiyun.com/detail/lohocc/8461107
下面介绍在Window和linux下生成Awr报告的步骤:
window平台步骤:
1. 登录部署Oracle10g数据的Windows服务器,运行cmd.exe
2. 首先进入C:\oracle\product\10.2.0\db_1\RDBMS\ADMIN目录
3. 用SYSDBA身份登录sqlplus
4. 在sqlplus中输入@awrrpt
5. 开始安装提示操作,首先是选择要生成awr报告的类型,可以选择text类型和html类型,这里以html类型为例,输入html
6. 选择要生报告的日期是多少天以前记录,输入1,则表示要生成今天0点开始到现在之内的某个时间段的报告,输入2,则表示要生成昨天0点开始到现在的某个时间段的报告,以此类推。缺省记录最近7天。这里输入1作为示例
7. 输入天数后,界面会显示出一个时间段的表格,每个时间点都对应一个Snap Id,间隔时间oracle默认是1个小时,接下来,输入要生成报告的时间开始点对应的Snap Id,这里以2012-6-18 01:00为例,表中看到其对应的Snap Id是633。
在
输入633
8. 下一步,要输入生成报告的时间的结束点对应的Snap Id,这里选2012-6-18 12:00为例,表中看到其对应的Snap Id是644.
在
输入644
9. 接着要求输入生成报告的名字,系统会自动生成一个默认的名字,并会在提示信息中显示出来,如果使用默认名,则不用输入任何内容,直接回车即可。这里默认是
,一般都是awrrpt_1_开始点对应的Snap Id_结束点对应的Snap Id.html命名,这里可以按照默认的名字就可以,生成报告内容中包含报告记录的时间段。
回车后,会生成报告。
linux平台步骤(这里只介绍前两步,剩下的步骤和window平台一样):
1. 使用oracle用户登录应用服务器所使用的数据节点所在的服务器
2. 首先进入$ORACLE_HOME/rdbms/admin目录
....参见window下步骤3-步骤9