学无止境
分类: Oracle
2013-12-02 10:57:01
调整默认采集的时间间隔
statspack快照
设置了statspack的自动job,默认时间间隔是1小时,可以按需要调整job的间隔时间即可。
修改为每半个小时采集一次:
使用perfstat用户登录,执行以下存储过程,job为数据库中自动快照job的编号。注意需要在最后commit。
begin
dbms_job.interval(
job => 25,
interval => 'trunc(SYSDATE+1/48,''MI'')'
);
commit;
end;
/
AWR快照
AWR为10g的新特性,数据库安装起来就有了自动任务采集,默认每隔1小时采集一次。10g中,默认保留周期为7天。
可以检查dba_hist_wr_control视图,查看快照间隔时间和快照保留时间。
SQL> select * from dba_hist_wr_control;
DBID SNAP_INTERVAL RETENTION TOPNSQL
---------- ------------------------------ ------------------------------ ----------
4287104562 +00000 01:00:00.0 +00007 00:00:00.0 DEFAULT
例如修改为每隔30分钟采集一次,快照保留8天,使用以下存储过程修改,interval的单位是分钟,retention的单位是分钟。
begin
dbms_workload_repository.modify_snapshot_settings (
interval => 30,
retention => 8*24*60
);
end;
/
修改之后:
SQL> select * from dba_hist_wr_control;
DBID SNAP_INTERVAL RETENTION TOPNSQL
---------- ------------------------------ ------------------------------ ----------
4287104562 +00000 00:30:00.0 +00008 00:00:00.0 DEFAULT