この記事ではAWR(Automatic Workload Repository/自動ワークロード・リポジトリ)のスナップショット間隔と保存期間の設定について記載いたします。

対応バージョン

Oracle Database 10.2 – 12.1

更新履歴

日付更新概要
2015/01/15記事公開
2016/03/20概要とスナップショットの設定に分割

AWRの設定変更

設定値の確認

$ sqlplus / as sysdba
SQL> select dbid, snap_interval, retention, topnsql from DBA_HIST_WR_CONTROL;
  • ・snap_interval スナップショット間隔時間
  • ・retention 保存時間
  • ・topnsql 各SQL基準(時間や解析コール数)ごとの保存対象の最上位SQLの数

設定値の変更

以下にdbidが3310949047のデータベースに対して、保存時間を43,200分(30日)、スナップショット間隔を30分、最上位SQLの数を100に変更する例を示します。

SQL> select name from v$database;
SQL> exec DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS(retention => 43200, interval => 30, topnsql => 100, dbid => 3310949047);

各変更対象の項目を指定しない場合は、現在の設定値が入力されます。

AWRの領域使用量

AWRの情報はSYSAUX領域に保存されます。保存量は以下の内容に左右されます。

  • 特定の時点におけるシステム内のアクティブ・セッション数
  • スナップショット間隔
  • 履歴データの保存期間

デフォルトでは、スナップショットは1時間に1回取得され、データベースに8日間保存されます。 これらのデフォルト設定では、同時アクティブ・セッション数が平均10の標準的なシステムの場合、AWRデータ用に約200から300MBの領域が必要になる可能性があります。

参考資料
https://docs.oracle.com/cd/E16338_01/server.112/b56312/autostat.htm
Oracle Databaseパフォーマンス・チューニング・ガイド 11gリリース2 (11.2)
B56312-06
5 自動パフォーマンス統計
5.2 自動ワークロード・リポジトリの概要
5.2.4 領域使用量