01.Statspackレポート
ほぼすべてのバージョン、Standard Editionを含むすべてのエディションのOracle Databaseで使用できるパフォーマンス監視機能です。定期的に取得したパフォーマンス関連のV$ビューの情報をもとにStatspackレポートと呼ばれるパフォーマンス診断レポートを出力できます。
環境を問わず使用できる点が利点ですが、事前に2つの作業が必要なことに注意してください。
- 1. Statspackのインストール : @?/rdbms/admin/spcreate.sql
- 2. スナップショットの自動取得設定 : @?/rdbms/admin/spauto.sql
StatspackはPL/SQLのモジュールと表などのオブジェクトから構成されます。これらは、SYSユーザーで @?/rdbms/admin/spcreate.sql を実行することで作成できます。
このとき、オブジェクトの所有者となるユーザー(デフォルトPERFSTAT)、オブジェクトを格納する表領域(デフォルト SYSAUXまたはTOOLS)を指定します。
ここで作成した表には、定期的に取得したパフォーマンス関連のV$ビューの情報を格納します。取得したデータをスナップショットと呼びますが、スナップショットを定期的に取得するジョブを作成しておく必要があります。このジョブは、Statspack関連オブジェクトの所有ユーザーで @?/rdbms/admin/spauto.sql を実行して、作成できます。
02.AWRレポート
Oracle Database 10.1以降のバージョンで Enterprise Editionの追加オプションであるDiagnostic Packを導入済みの場合、AWRレポート (Automatic Workload Repositoryレポート) を使用できます。
AWRレポートは Statspackレポートの拡張版という位置づけとなり、以下の点でStatspackレポートより優れているため、AWRレポートが使用できる場合はStatspackレポートではなくAWRレポートを使用してください。
- 事前のインストール、スナップショットの自動取得設定が不要です。
- Statspackではレポートはテキスト形式のみですが、AWRレポートではHTMLも選択できます。高負荷SQLの全文など一部の情報についてはHTML版でのみ出力されます。
- Statspackよりも多くの統計情報を出力できます。
03.OS観点でのパフォーマンス統計
Oracle DatabaseもOSから見ればアプリケーションにすぎません。このため、Oracle Databaseの観点(アプリケーションの観点)からだけではなく、OSの観点からパフォーマンス監視を行う必要があります。
UNIX/Linuxではsar, vmstat, iostatなどをパフォーマンス監視コマンドが用意されていますが、定期的なデータ取得、取得データの保管という点で使いにくい部分がありました。(sarを除く)
このため、定期的なデータ取得、取得データの保管の機能をもつ、パフォーマンス監視ツールの導入をお勧めします。
サポート契約をお持ちの方は Oracleが提供する OSWatcher Black Boxの使用も検討してください。以下のドキュメントは Oracle Linux 6用のドキュメントですが、OSWatcher Black BoxはUNIX/Linux一般で使用できるツールです。
Oracle Linux 管理者ソリューション・ガイド リリース6 → 12. 診断ツールのサポート → 12.3. OSWatcher Black Boxについて