AWR 是 Oracle 10g 版本推出的新特性, 全称叫Automatic Workload Repository(自动负载信息库), AWR 是通过对比两次快,照(snapshot)收集到的统计信息,来生成报表数据,生成的报表包括多个部分
1.AWR保存策略
select * from dba_hist_wr_control; DBID SNAP_INTERVAL RETENTION TOPNSQL ---------- --------------------------------------- --------------------------------------- ---------- 1564637639 +00000 01:00:00.0 +00007 00:00:00.0 DEFAULT
2.生成AWR报告的步骤
2.1 Linux系统
sqlplus / as sysdba SQL> @$ORACLE_HOME/rdbms/admin/awrrpt.sql 输入 report_type 的值:html (注:确定报告的格式) 输入 num_days 的值:7 (注:选择快照的天数) 输入 begin_snap 的值:425 (注:起始快照) 输入 end_snap 的值:427 (注:结束快照) 输入 report_name 的值:/home/oracle/scr/awr_report/awr-2020-01-18.html
2.2 windows系统
1.运行cmd,然后进入到 oracle的安装目录 例: E:\app\Administrator\product\11.2.0\dbhome_1\ 2.再进入到下面的目录 RDBMS\ADMIN,确ADMIN下面有 awrrpt.sql这个文件 3.输入 sqlplus ,然后以管理员身份登录。 4.输入命名:@awrrpt 5.输入 report_type 的值:html --可以选择text或html类型 6.输入 num_days 的值:7 --选择快照的天数 输入1,则表示要生成今天0点开始到现在之内的某个时间段的报告,以此类推,缺省记录最近7天 7.输入 begin_snap 的值:425 --起始快照 8.输入 end_snap 的值:427 --结束快照 9.输入 report_name 的值 --D:\awr.html(指定位置) 注:生成的oracle报告的位置若不指定默认位置在: $ORACLE_HOME\RDBMS\ADMIN 下
3. 调整AWR相关参数
--收集间隔时间改为保留10天时间 exec dbms_workload_repository.modify_snapshot_settings(retention=>10*24*60); --集间隔时间改为30 分钟一次 exec dbms_workload_repository.modify_snapshot_settings(interval=>30);