イベント・モニターの変更

イベント・モニターを変更することはできませんが、例外が 1 つだけあります。 イベント・モニターで収集する論理データ・グループのセットに 1 つ以上の論理データ・グループを追加することができます。 論理グループを追加するには、ALTER EVENT MONITOR ステートメントを使用します。

このタスクについて

表に書き込むイベント・モニターを作成すると、 デフォルトでは、そのイベント・モニターに関連付けられているすべての論理データ・グループのモニター・エレメントがキャプチャーされます。 ただし、CREATE EVENT MONITOR ステートメントに論理データ・グループの名前を含めた場合は、 それらのグループのみがキャプチャーされます。 例えば、以下の例に示すように、event_activity および event_activity_metrics 論理データ・グループのデータのみをキャプチャーするアクティビティー・イベント・モニターを作成することができます。
CREATE EVENT MONITOR myacts FOR ACTIVITIES 
   WRITE TO TABLE
   event_activity, event_activity_metrics
上記の DDL ステートメントは、ACTIVITY_myacts および ACTIVITY_METRICS_myacts という 2 つの表に書き込みを行うイベント・モニターを作成します。

制約事項

ALTER EVENT MONITOR ステートメントは、イベント・モニターに論理データ・グループを追加する場合にのみ使用できます。 論理データ・グループは除去できません。また、データ・グループに属するモニター・エレメントのデータをキャプチャーするために使用する表に関連付けられている、 名前、ターゲット表スペース、および PCTDEACTIVATE 値を変更することはできません。

手順

他の論理データ・グループをイベント・モニターに追加するには、以下のようにします。

  1. 追加する論理データ・グループを決定します。
    前述の例の、2 つの論理データ・グループのみをキャプチャーするロック・イベント・モニターに、 event_activitystmt および event_activityvals 論理データ・グループを追加するとします。
  2. これらの新しい論理データ・グループを追加するための ALTER EVENT MONITOR ステートメントを用意します。
    ALTER EVENT MONITOR mylacts
       ADD LOGICAL GROUP event_activitystmt
       ADD LOGICAL GROUP event_activityvals
  3. ステートメントを実行します。

タスクの結果

この ALTER EVENT MONITOR ステートメントの実行が完了すると、 イベント・モニター myacts に以下の 2 つの表が追加で作成されます。
  • ACTIVITYSTMT_myacts
  • ACTIVITYVALS_myacts
次にイベント・モニターが活動化されたときに、これらの表には、対応する論理データ・グループのデータが追加されます。
要確認: 新しい論理データ・グループをイベント・モニターに追加した場合、 新たに追加された論理グループの表には、もともと表に含まれていた論理データ・グループの既存データに対応する行はありません。 論理グループを追加した後は、必要に応じて照会を調整するか、表の古いデータを整理することを検討してください。

データベース管理者は、次の SQL ステートメントを使用して、mylocks というロッキング・イベント・モニターを作成します。
CREATE EVENT MONITOR mylocks FOR LOCKING WRITE TO TABLE LOCK, LOCK_PARTICIPANTS
このステートメントは、lock 論理データ・グループおよび lock_participants 論理データ・グループのモニター・エレメントに関する情報を収集します。 モニター・エレメント・データが書き込まれる先の表は、デフォルトの表名である LOCK_MYLOCKS および LOCK_PARTICIPANTS_MYLOCKS で作成されます。
その後、データベース管理者は LOCK_PARTICIPANT_ACTIVITIES 論理データ・グループ内の情報を収集することを決定します。 データベース管理者は次のステートメントを使用して、イベント・モニターを変更します。
ALTER EVENT MONITOR mylocks ADD LOGICAL GROUP LOCK_PARTICIPANT_ACTIVITIES
このステートメントにより、lock_participant_activities のモニター・エレメントが、既に収集されているその他のエレメントに加えて収集されます。 この新しいセットのモニター・エレメントは、表 LOCK_PARTICIPANT_ACTIVITIES_MYLOCKS に書き込まれます。
その後、データベース管理者が CONTROL 論理データ・グループのデータも必要だと判断したとします。 しかし、このデータはデフォルト以外の名前の表、およびデフォルトの表スペース以外の表スペースに書き込むことが望ましいと考えます。 そこで、次のステートメントを使用します。
ALTER EVENT MONITOR mylocks ADD LOGICAL GROUP CONTROL TABLE ctl_mylocks IN mytbsp3
このステートメントは、制御論理データ・グループをイベント・モニターの出力に追加します。 このステートメントは、制御論理データ・グループをイベント・モニターの出力に追加します。 データは表 CTL_MYLOCKS に書き込まれます。 この表は、デフォルトの表スペースではなく表スペース mytbsp3 に書き込まれます。