FCM 通信でデータベース・パーティション間通信を使用可能にする

パーティション・データベース環境では、データベース・パーティション間のほとんどの通信は、 高速コミュニケーション・マネージャー (FCM) によって処理されます。

データベース・パーティションでFCMを使用可能にし、他のデータベース・パーティションと通信するには、このセクションで後述するように、etcディレクトリーのデータベース・パーティションのservicesファイルにサービス・エントリーを作成しなければなりません。 FCM は、指定されたポートを使用して通信を行います。 同じホスト上に複数のデータベース・パーティションを既に定義している場合、このセクションの後の部分で示すように、ある範囲のポートを定義する必要があります。

Fast Communications Manager(FCM)のメモリを手動で構成する前に、FCMバッファーの数(fcm_num_buffers)とFCMチャネル数(fcm_num_channels)の自動設定(デフォルト設定でもある)から始めることをお勧めします。FCMアクティビティのシステムモニターデータを使用して、この設定が適切かどうかを判断します。

Windows に関する考慮事項
TCP/IP のポート範囲は、以下のものによって自動的にサービス・ファイルに追加されます。
  • インストール・プログラムがインスタンスを作成したり新しいデータベース・パーティションを追加したりするときに、 インストール・プログラムによって
  • db2icrt ユーティリティーが新しいインスタンスを作成するときに、 db2icrt ユーティリティーによって
  • db2ncrt ユーティリティーがコンピューターに最初のデータベース・パーティションを追加したときに、 db2ncrt ユーティリティーによって
サービス項目の構文は、以下のとおりです。
   DB2_instance port/tcp #comment
Db2_instance
instance の値は、データベース・マネージャー・インスタンスの名前です。 名前の中のすべての文字は小文字でなければなりません。 DB2PUSERのインスタンス名を想定して、DB2_db2puserを指定します。
ポート/tcp
データベース・パーティションのために予約する TCP/IP ポート。
#コメント
この項目と関連付ける任意の注釈。 注釈の前には、ポンド記号 (#) を付けなければなりません。

etcディレクトリーのservicesファイルが共有される場合、ファイル割り当てポート数が、インスタンスの複数のデータベース・パーティションの最大数以上であることを確保しなければなりません。 ポートを割り当てる場合には、 バックアップとして使用できるプロセッサーもその数の中に入れるようにしなければなりません。

etc ディレクトリーの services ファイルが共有されていない場合は、追加の考慮事項が 1 つありますが、同じ考慮事項が適用されます。 Db2® データベース・インスタンスに定義されている項目が、 etc ディレクトリーのすべての services ファイルで同じであることを確認する必要があります (ただし、パーティション・データベース環境に適用されない他の項目は同じである必要はありません)。

1 つのインスタンス内で同じホスト上に複数のデータベース・パーティションがある場合、 使用する FCM のために複数のポートを定義しなければなりません。 これを行うには、etcディレクトリーのservicesファイルに、割り当てポート範囲を示す2 行を含めます。 最初の行は最初のポートを指定し、2 番目の行は複数ポートから成るブロックの終わりを示します。 以下の例では、SALES インスタンスに 5 つのポートが割り当てられます。 これは、そのインスタンスには、 5 つを超えるデータベース・パーティションを持つプロセッサーはないことを意味します。 以下に例を示します。
   DB2_sales         9000/tcp
   DB2_sales_END     9004/tcp
注: END は大文字のみで指定する必要があります。 また、両方の下線文字 (_) を必ず含める必要があります。