管理の手引き


システムからのデータベース区画の除去

DB2STOP コマンドに DROP NODENUM パラメーターを指定する、 または sqlepstp API を使用することによって、 データベース区画を除去することができます。 除去を行う前に、まず、 除去しようとしているデータベース区画がどのデータベースによっても使用されていないことを確認する必要があります。 これを検査するには DROP NODE VERIFY コマンドを出します。

このデータベース区画を調整プログラムとしていたすべてのトランザクションがすべて正常にコミットされている、 またはロールバックされていることを確認する必要があります。 このためには、他のサーバーで破損回復を行う必要があることがあります。

たとえば、(調整プログラム・ノードのような) 調整プログラム・データベース区画を除去すると、 その調整プログラム・ノードが除去される前にトランザクションに関連する他のデータベース区画が破損した場合、 破損したデータベース区画はどの未確定トランザクションの結果についても調整プログラム・ノードを照会することができなくなります。

区分データベース・システムからデータベース区画を除去するために、次のようにします。

  1. このノードにある各データベースのデータを再配分する。 これにより、 除去しようとしているデータベース区画がどのデータベースによっても使用されていないという要件が満たされます。 詳細は、第 30 章, データベース区画間でのデータの再配分を参照してください。
  2. DROP NODE VERIFY コマンドまたは sqledrpn API を使用して、 サーバーが使用中ではないことを確認する。

    受け取ったメッセージに従って、ステップ 3 または 4 に進む。

  3. メッセージ SQL6034W (Node not used in any database - ノードはほかのデータベースによって使用されていません) が出た場合は、 以下を行う。

    1. DROP NODENUM パラメーターを指定した DB2STOP コマンドを出して、 データベース区画を除去する。 このコマンドが正常に終了すると、システムは停止します。
    2. 必要な場合は、DB2START コマンドによってデータベース・マネージャーを開始する。
  4. SQL6035W (Node in use by database - ノードはほかのデータベースによって使用されています) が出た場合は、 次のようにする。

    1. REDISTRIBUTE NODEGROUP コマンドを使用して、 削除したいデータベース区画のデータを、メッセージ SQL6035W の指示に従って、 データベース別名から他のデータベース区画へ再配分する。 これが終了するまでは、データベース区画を除去することはできません。
    2. データベース区画に定義されているイベント・モニターがあれば、 それを除去する。
    3. 2 に戻り、続行します。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]