1.AWR默认的采样间隔和历史快照保留时间

10g版本中默认是保留7天,11g版本中默认保留8天,采集间隔是1小时,这个信息可以从DBA_HIST_WR_CONTROL视图中获得。

zx@ORCL>col SNAP_INTERVAL for a20
zx@ORCL>col RETENTION for a20
zx@ORCL>select * fromdba_hist_wr_control;

DBID SNAP_INTERVAL RETENTION TOPNSQL
----------------- ------------------------- ------------------------- ----------
1444351641 +00000 01:00:00.0 +00008 00:00:00.0 DEFAULT

 

SNAP_INTERVAL=+00000 01:00:00.0 表示采样间隔是1小时

RETENTION=+00008 00:00:00.0 表示采样数据保留期限是8天

 

关于DBA_HIST_WR_CONTROL视图的更多参考可参见Oracle官方文档

​http://docs.oracle.com/cd/E11882_01/server.112/e40402/statviews_4072.htm#REFRN23462​

 

2、修改AWR默认的采样间隔和历史快照保留时间

使用DBMS_WORKLOAD_REPOSITORY包中的MODIFY_SNAPSHOT_SETTINGS存储过程

zx@ORCL>desc DBMS_WORKLOAD_REPOSITORY

……

PROCEDURE MODIFY_SNAPSHOT_SETTINGS
Argument Name Type In/Out Default?
---------------------------------------------------- ------ --------
RETENTION NUMBER IN DEFAULT
INTERVAL NUMBER IN DEFAULT
TOPNSQL VARCHAR2 IN
DBID NUMBER IN DEFAULT

例如我们需要将采集间隔调整为15分钟,采样数据保留31天,可以做如下调整

zx@ORCL>begin
2 dbms_workload_repository.modify_snapshot_settings(
3 interval => 15,
4 retention => 31 * 24 *60);
5 end;
6 /

PL/SQL procedure successfully completed.

验证修改结果

zx@ORCL>select * fromdba_hist_wr_control;

DBID SNAP_INTERVAL RETENTION TOPNSQL
----------------- ------------------------------------------------------ ----------
1444351641 +00000 00:15:00.0 +00031 00:00:00.0 DEFAULT

 

更多关于该存储过程的说明请参考Oracle官方文档

​http://docs.oracle.com/cd/E11882_01/appdev.112/e40758/d_workload_repos.htm#ARPLS69140​