リリース間でのイベント・モニター・データの保持

データベース製品をアップグレードした後に、イベント・モニターの出力表をアップグレードできます。 この機能により、アップグレードする前に存在していたイベント・モニター表のデータを 保持できます。

イベント・モニターが拡張されたために、イベント・モニターによって生成される表が変更される場合があります。 例えば、新しいモニター・エレメントのレポート用に、 新しい列が表に追加される場合があります。 10.1 より前では、保持する必要があるデータを含む表に書き込まれた既存のイベント・モニターがあり、新しく追加された列のデータを収集する場合、新しいリリースにアップグレードした後にそれらを手動で変更する必要がありました。 この変更で、使用する新規列を追加していました。 新規列を追加しない場合、 イベント・モニターは前のリリースと同様に機能して、 前のリリースのイベント・モニターでサポートされていたデータのみをキャプチャーします。

変更された未フォーマット・イベント表は、一切アップグレードできませんので、 ドロップして再作成する必要があります。

EVMON_UPGRADE_TABLES ストアード・プロシージャーは、 Db2® 製品の現行レベルで生成されたものと一致するように、既存のイベント・モニター表の定義をアップグレードします。 このフィーチャーにより、既存の表を、中に入っているすべてのデータと一緒に保持できます。 表を手動で変更したり、ドロップして再作成したりする必要がなくなります。
注: 10.1以降、ALTER EVENT MONITOR ステートメントを使用して、新しい論理グループをイベント・モニターに追加することもできます。 この方法を EVMON_UPGRADE_TABLES の代わりに使用して、新規リリースで導入された論理データ・グループを 追加することもできます。 ただし、ALTER EVENT MONITOR を使用して、イベント・モニターに既に関連付けられている論理グループを変更することはできません。イベント・モニターに既に関連付けられている論理データ・グループが変更されている場合、イベント・モニターを変更する唯一の方法は、EVMON_UPGRADE_TABLES プロシージャーを使用することです。

EVMON_UPGRADE_TABLES プロシージャーは、通常の表および UE 表の両方に使用できます。 通常の表の場合、プロシージャーは必要な新しい列を追加し、不要になった古い列をドロップし、必要に応じて列を変更します。 UE 表の場合、このプロシージャーは、 新規列の追加および既存の列への変更を必要に応じて行い、 db2evmonfmt ツールまたは EVMON_FORMAT_UE_TO_TABLES や EVMON_FORMAT_UE_TO_XML ルーチンで UE 表を処理できるようにします。

重要: アップグレード・プロセスを正常に機能させるには、すべてのアクティブ・イベント・モニターを非アクティブ化する必要があります。 EVMON_UPGRADE_TABLES プロシージャーは、表のアップグレードを開始する前に、アクティブなイベント・モニターを自動的に非アクティブ化します。 表を EVMON_UPGRADE_TABLES によって処理しているイベント・モニターは再活動化しないでください。再活動化すると、 アップグレード・プロセスは失敗します。 アップグレードの前にアクティブであったイベント・モニターは、 アップグレードが完了すると再び活動化されます。

イベント・モニター表をアップグレードしない場合の 影響

過去のリリースと同様に、イベント・モニター表をアップグレードしないことを選択できます。 ただし、 新規リリースでイベント・モニターに導入された新しい列にデータは設定されず、 照会することもできません。 また、以前に旧リリースに存在していたモニター・エレメントの値、および新規リリースでサイズが増加したモニター・エレメントの値は、切り捨てられる可能性があります。 例えば、新規リリースでモニター・エレメントのサイズが VARCHAR (20) から VARCHAR (128) に増加し、既存の表をアップグレードしない場合、システムがそのモニター・エレメントの 128 バイトのデータをイベント・モニターに送信しても、モニター・エレメント値を含む列には引き続き 20 文字のデータのみが保管されます。

EVMON_FORMAT_UE_TO_TABLES によって生成される表のアップグレード

UE 表を使用していた場合、EVMON_UPGRADE_TABLES プロシージャーは、 UE 表自体をアップグレードします。 EVMON_FORMAT_UE_TO_TABLES プロシージャーを使用して通常の表を作成しているかもしれませんが、通常の表には作用しません。 EVMON_UPGRADE_TABLES を使用して UE 表をアップグレードした後、EVMON_FORMAT_UE_TO_TABLES によって生成された出力表をアップグレードすることもできます。  UPGRADE_TABLES オプションを指定して EVMON_FORMAT_UE_TO_TABLES プロシージャーを実行すると、プロシージャーによって生成される既存の表が変更され、表の列が新しいバージョンの EVMON_FORMAT_UE_TO_TABLES プロシージャーによって生成される出力と一致するようになります。