web-dev-qa-db-ja.com

DB2ポート番号を識別する方法

ポート番号を使用してJavaでDB2接続を確立する必要があります。DB2にコマンドがあるか、DB2ポート番号を取得できる方法はありますか?

このポートはDB2のインストール中に変更できるため、DB2接続の確立中にデフォルトのポート50000を使用していません。 DB2コマンドまたはその他の代替手段を提案してください。

19
user628083

Windows DB2サーバーで、DB2コマンドウィンドウを開き、コマンドを実行します

db2 get database manager configuration | findstr /i svce

これにより、次のような出力が得られます。

 TCP/IP Service name                          (SVCENAME) = db2c_DB2
 SSL service name                         (SSL_SVCENAME) =

SVCENAMEは、DB2がリッスンしているポートです。この名前を実際のポート番号に解決するには、%SystemRoot%\system32\drivers\etc\servicesにあるservicesファイルを参照する必要があります。

32
Ian Bjorhovde

DB2コマンドプロンプトに移動します。

コマンドを発行して、db2インスタンスを取得します

コマンド:db2 get instance

コマンドを発行してTCP/IPサービス名を見つけます

コマンド:db2 get dbm cfg | grep SVCE

db2 get dbm cfg | grep SVCE

TCP/IPサービス名(SVCENAME)= db2c_db2inst9 TCP/IPサービス名は "db2c_db2inst9"

TCP/IPサービス名を使用して、/ etc/servicesファイルでポート番号を見つけます

コマンド:grep TCP/IPservicename/etc/services

TCP/IPservicenameを現在のサービス名に変更します。

grep db2c_db2inst9/etc/services

db2c_db2inst9 50090/tcp

DB2インスタンスはポート番号で実行されています5009

12

Linux/Unix DB2サーバーで、シェルターミナルを開き、インスタンス所有者でログオンします。以下のコマンドを実行します。

        db2 "get dbm cfg"|grep -i svce

Ian Bjorhvdeの答えのように、TCP/IPサービス名を表示します。SVCENAMEは、ファイル/ etc/serviceで表示できます。

6
Carlos Guzmán

サーバーに異なるインスタンスがある可能性があります。つまり、DB2は異なるポートでリッスンしています。まず、サーバー内のインスタンスをリストする必要があります

db2ilist

インスタンス名のセットを取得します。それぞれについて、ポート名を取得する必要があります

ウィンドウズ

set DB2INSTANCE=instname
db2 get dbm cfg

Linux

export DB2INSTANCE=instname
db2 get dbm cfg

インスタンスを変更しない場合、現在のインスタンスのサービス名のみを取得します。クライアントからその情報を取得する別の方法は、構成アシスタント(db2ca)を使用することです。詳細ビューでは、インスタンスを右クリックすると、ポート番号、サービス名などのインスタンスの詳細が表示されます。

3
AngocA

これにより、マシンにインストールされているすべてのdb2インスタンスのポートが提供されます(LinuxまたはAIXシステムの場合)

netstat -aan | grep -i db2
0
Dhanish Jose