通过MODIFY_SNAPSHOT_SETTINGS过程,DBA可以调整包括快照收集频率、快照保存时间、以及捕获的SQL数量三个方面的设置。分别对应MODIFY_SNAPSHOT_SETTINGS的三个参数:

 
Retention :设置快照保存的时间,单位是分钟。可设置的值最小为1天,最大为100年。设置该参数值为0的话,就表示永久保留收集的快照信息。
Interval :设置快照收集的频率,以分钟为单位。可设置的值最小为10分钟,最大为1年。如果设置该参数值为0,就表示禁用AWR特性。
Topnsql :指定收集的比较占用资源的SQL数量,可设置的值最小为30,最大不超过100000000。
  查看当前快照收集的相关设置,可以通过DBA_HIST_WR_CONTROL视图查看,例如:
 
SQL> select * from dba_hist_wr_control;
 
      DBID SNAP_INTERVAL            RETENTION            TOPNSQL
 
---------- ------------------------ -------------------- ----------
 
3812548755 +00000 01:00:00.0        +00007 00:00:00.0    DEFAULT
  又比如通过MODIFY_SNAPSHOT_SETTTINGS过程修改snap_intrval的设置:
 
SQL> exec dbms_workload_repository.modify_snapshot_settings(interval=>120);
 
PL/SQL procedure successfully completed.
 
SQL> select * from dba_hist_wr_control;
 
      DBID SNAP_INTERVAL            RETENTION            TOPNSQL
 
---------- ------------------------ -------------------- ----------
 
3812548755 +00000 02:00:00.0        +00007 00:00:00.0    DEFAULT