Oracle 修改AWR的信息收集頻率

默認情況下,AWR的信息每隔一個小時收集一次AWR信息,並保留7天。這些數據存放在SYSAUX表空間中,可能會導致SYSAUX表空間不足,
如果SYSAUX空間嚴重不足,將會在alter日誌報ORA-1683和ORA-1688錯誤,建議修改爲每隔4小時收集一次並保留3天的數據。

現象描述: 
 版本:oracle 11.0.7
oracle日常檢查中發現alter日誌報如下錯誤:
ORA-1683: unable to extend index SYS.WRH$_LATCH_PK partition
WRH$_LATCH_4064376933_1546 by
 128 in               tablespace SYSAUX
ORA-1688: unable to extend table SYS.WRH$_SYSSTAT partition
WRH$_SYSSTA_4064376933_1546 by
 128 in                 tablespace SYSAUX
MMON Flush encountered SYSAUX out of space error(1688).       
 告警信息: 
 ORA-1683: unable to extend index SYS.WRH$_LATCH_PK partition
WRH$_LATCH_4064376933_1546 by
 128 in               tablespace SYSAUX
ORA-1688: unable to extend table SYS.WRH$_SYSSTAT partition
WRH$_SYSSTA_4064376933_1546 by
 128 in                 tablespace SYSAUX
MMON Flush encountered SYSAUX out of space error(1688).

 

原因分析: 
默認情況下,AWR的信息每隔一個小時收集一次AWR信息,並保留7天。這些數據存放在SYSAUX表空間中。


處理過程: 
目前現網即是採用默認配置,建議修改爲每隔4小時收集一次並保留3天的數據。
修改步驟如下:
1.查詢當前的設置:
SQL> select * from dba_hist_wr_control;
返回結果例如:
    DBID                SNAP_INTERVAL  RETENTION    TOPNSQL
1 4068003495     +00000 01:00:00.0    +00008 00:00:00.0     DEFAULT
字段snap_interval表示時間間隔,這裏爲每1小時收集一次AWR

2.查看moving_window_size的大小:
SQL> SELECT baseline_name, start_snap_time, end_snap_time,
moving_window_size
  FROM dba_hist_baseline_details

3.返回結果中,如果字段moving_window_size的值大於要修改爲的保留天數,則必須執行
以下命令修改,這裏應修改爲3:
begin DBMS_WORKLOAD_REPOSITORY.MODIFY_BASELINE_WINDOW_SIZE(WINDOW_SIZE=>3);
end;

4.修改AWR設置:
BEGIN
  dbms_workload_repository.modify_snapshot_settings(INTERVAL  =>240,retention => 3 * 24 * 60);
END;
這裏,參數INTERVAL表示每隔多少分鐘收集一次AWR信息。參數retention表示3(天)*24(小時/天)*60(分鐘/小時)分鐘。


5.將AWR的保留天數從7天修改爲3天后,系統不會自動將第4天到第7天的信息刪除。仍需要手工刪除,刪除方法請參考下面的內容。
刪除部分AWR信息的步驟如下:
找到DBID:
SQL> select dbid from v$database
返回結果例如4068003495
確定要清除哪些SNAP_ID:
查詢視圖dba_hist_snapshot確定需要清除的SNAP_ID範圍,這裏例如爲51到130
清除AWR歷史數據:
BEGIN
  dbms_workload_repository.drop_snapshot_range(
low_snap_id  => 51,
high_snap_id => 130,
dbid         => 4068003495);
END;


6.查詢視圖dba_hist_snapshot以及WRH$_LATCH,應發現SNAP_ID範圍爲51到130的數據已被清除。

       
建議與總結: 
oracle 10G後新增表空間SYSAUX空間,默認情況下,AWR的信息每隔一個小時收集一次AWR信息,並保留7天。這些數據存放在SYSAUX表空間中,建議修改爲每隔4小時收集一次並保留3天的數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章