SSJ Tech Lab - Oracle Database テクニカルラボ

AWRレポート出力、スナップショットの取得・削除

対応バージョン

Oracle Database 10.2 - 12.1

2017-01-29レポートの出力とスナップショットの取得を統合

2015-01-15記事公開

AWR(Automatic Workload Repository/自動ワークロード・リポジトリ)のレポート出力、スナップショット取得及び削除の方法について記載いたします。レポートの出力とスナップショットの取得という名前が紛らわしく感じるため統合しました。
また、AWRレポートを出力するために、シェル化を行ったものを以下に公開しております。
シェル-AWRレポート出力

AWRレポートの出力

インスタンスのAWRレポート出力

以下にAWRレポート出力方法の例を示します。

SQLファイルを実行している時の@の後ろに指定されている?マークはORACLE_HOMEの省略を示しています。
実際のフルパスに変更することでも実行できます。

Oracle RAC全体のAWRレポート出力

Oracle RAC全体のレポートを出力する場合は以下のSQLを実行します。
ファイル名はawrgrpti.sqlとなり、gがついています。

SQLレポート出力

特定のSQLに対するレポートを出力する場合は、以下のSQLを実行します。

ASHレポート出力

ASH(Active Session History:待機発生状況の履歴)レポートを出力する場合は、以下のSQLを実行します。

Oracle RAC全体のASHレポートを出す場合はinst_numにALLを指定します。
Enter value for inst_num: ALL

ASHレポートはAWRレポートに現れない、短い期間のパフォーマンスの分析に使用します。
ASHの詳細についてはマニュアルを参照してください。

5.1.1.3 アクティブ・セッション履歴
http://docs.oracle.com/cd/E16338_01/server.112/b56312/autostat.htm#i35568
5.3.8 アクティブ・セッション履歴レポートの生成
http://docs.oracle.com/cd/E16338_01/server.112/b56312/autostat.htm#CHDIDEDG

AWRのスナップショット取得及び削除

AWRスナップショットの取得

以下のSQLを実行することでAWRスナップショットを取得(作成)します。
デフォルトの場合、自動で1時間に1回スナップショットが取得されています。

AWRスナップショットIDの確認

保存されているスナップショットのスナップショットIDおよび日時を確認します。

AWRスナップショットの削除

dbidが3310949047のスナップショットID 22から32を削除する例を示します。
削除したいスナップショットの日付と時間の確認は、上記のAWRスナップショットIDの確認から行うことができます。