2009/06/12

DB2 Express-C v9.5でネットワーク接続を有効にしてみる

DB2はデフォルトではネットワーク経由でのサーバーアクセスを許可しません。 これはOSのインストールの度にやる作業なので、自分用の作業メモを残してみます。

ポート番号の予約

実際のところ全部ポート番号を直に使えば良さそうですが、一応マニュアルに沿って作業する事にしました。
/etc/servicesに適当なエントリを作成して任意の番号を割り振ります。 ポート番号はRFC3232を確認すると、IANAを確認するべしとあるので、そこからたどってポート番号のアサインを確認すると、49152から65535が動的割り当て+プライベートの領域として予約されているので、自分用に51001以降を使う事にしました。

$ echo "db2yasu  51001/tcp  ## for DB2 instance" | sudo tee -a /etc/services

DB2サーバー設定の更新

サーバー側では勝手に決めたポート番号の登録の他にネットワーク接続の方法としてtcpipを登録する必要があります。

$ db2set DB2COMM=tcpip
$ db2 update dbm cfg using SVCENAME db2yasu
あとはインスタンスを再立ち上げすれば反映されるはず。

インスタンスの再起動と確認

再起動はいつも通り。

$ db2stop ; db2start

まずはdb2setコマンド。

$ db2set -all | grep DB2COMM
そして次のように表示されればOK。
[i] DB2COMM=tcpip

コマンドで設定を確認するよりもnetstatを使った方が確実。

$ netstat -na | grep 51001
設定が反映されていればサーバーがポートを開いているので次のように表示されます。
tcp        0      0 0.0.0.0:51001           0.0.0.0:*               LISTEN

だいたいこんなところでしょうか。

0 件のコメント: