変更履歴イベント・データの収集

変更履歴イベント・モニターを使用して、 データベースとデータベース管理システムのパフォーマンス、動作、および安定性に影響を与える可能性があるアクティビティーに関する情報を収集することができます。

始める前に

変更履歴イベント・モニターを作成し、変更履歴イベント・モニター・データを収集するには、 DBADM または SQLADM 権限が必要です。

このタスクについて

変更履歴イベント・モニターは、 標準的なデータベース・ワークロードの実行に影響を与える可能性がある変更をキャプチャーします。通常のワークロードにパフォーマンスの低下が発生したり、 予期しない動作が見られた場合は、問題を引き起こすような変更が行われていないか調べる必要があります。 各変更関連イベントは、 次の 3 つのキー・フィールドによって一意的に識別されます。
イベント・タイム・スタンプ
イベントが発生した時刻。
イベント ID
イベント・タイム・スタンプが共通している場合に、固有性を確保するための数値トークン。
メンバー
イベントが発生したデータベース・マネージャー・プロセス。イベントのタイム・スタンプおよびイベント ID は、メンバー内でのみユニークであるため、 メンバーによってグローバルな固有性が確保されます。

すべての論理グループには、これらの 3 つのフィールドが含まれており、 同じイベントに対応するレコードまたは行はすべて、これらのフィールドに同じ値が入っています。これらの共通する値によって、異なる論理データ・グループ間で情報を結合することが容易になります。別のメンバーでのユーティリティー操作および構成パラメーター更新は、別のイベントとしてキャプチャーされるため、 これらのキー・フィールドは異なる値になります。

制約事項

変更履歴イベント・モニター・データは、 論理データ・グループに関連付けられている表にのみ書き込むことができます。変更履歴イベント・モニターは、 未フォーマット・イベント表、ファイル、および名前付きパイプには書き込めません。

手順

データベースのパフォーマンス、動作、または安定性に影響を与えている可能性があるアクティビティーに関する詳細情報を収集するには、 以下の手順を実行します。

  1. 対象とする変更履歴イベントを決定します。 変更履歴イベント・モニターは、以下に関するイベントをキャプチャーすることができます。
    • 構成パラメーターの変更
    • レジストリー変数の変更
    • DDL 実行
    • コミット、ロールバック、またはセーブポイントまでのロールバックの発生
    • イベント・モニターの開始情報
    • ユーティリティーの開始情報
    • ユーティリティーのパスまたはファイル情報
    • ユーティリティーの停止情報
    • ユーティリティーのフェーズ情報
  2. CREATE EVENT MONITOR FOR CHANGE HISTORY ステートメントを使用して、 whats_changed という変更履歴イベント・モニターを作成します。 WHERE EVENT IN 節を使用して、キャプチャーする変更履歴イベントを指定します。 以下の例では、すべてのイベント・タイプをキャプチャーする変更履歴イベント・モニターを作成する方法を示しています。
    CREATE EVENT MONITOR whats_changed 
       FOR CHANGE HISTORY WHERE EVENT IN (ALL)
       WRITE TO TABLE
  3. 以下のステートメントを実行して、whats_changed という変更履歴イベント・モニターを活動化します。
    SET EVENT MONITOR whats_changed STATE 1

タスクの結果

変更履歴イベント・モニターがアクティブである (データベース構成の更新など) 間に変更履歴イベントが発生した場合は、 必ず、そのイベントに関する情報が、変更履歴イベント・モニターの表にキャプチャーされます。 イベント・モニターの WHERE EVENT IN 節に指定したイベントのみが、変更履歴イベント・モニターでキャプチャーされます。