DB2 Express-C for MacOS X をインストール (2)
前回(2011-02-28)から随分間が開いてしまいました。
停電の影響で再起動は済んでいたものの、忙しかったり他の問題があったりで手付かずに。ふと下書きを見ると、この記事の書きかけがあったので、やっと思い出したのでした。
インスタンス起動(続き)
まず前回のつづき。パスを通しておき、起動コマンドを実行。
$ export PATH=$PATH:${DB2DIR}/adm:{DB2DIR}/bin $ db2start SQL1063N DB2START processing was successful. $
続けてサンプルDBを作成。
$ db2sampl Creating database "SAMPLE"... Connecting to database "SAMPLE"... Creating tables and data in schema "ROOT"... Creating tables with XML columns and XML data in schema "ROOT"... 'db2sampl' processing complete. $
コマンドラインクライアントを起動し、サンプルDBに接続。適当にテーブルをSELECTしてみる。
$ db2 (c) Copyright IBM Corporation 1993,2007 Command Line Processor for DB2 Client 9.5.2 (中略) For more detailed help, refer to the Online Reference Manual. db2 => connect to sample Database Connection Information Database server = DB2/DARWIN 9.5.2 SQL authorization ID = ROOT Local database alias = SAMPLE db2 => list tables (以下略)
上手くいっているようです。
TCP/IP経由で接続できるようにする
この時点では、TCP/IP接続ができません。
$ db2 get dbm cfg | grep SVCENAME TCP/IP Service name (SVCENAME) = $
まず、サービス用にポートを定義しておきます。/etc/servicesに1行"db2c_argius 50001/tcp"を追加します。
DB2のデフォルトポートは50000のようですが、ここでは訳あって50001にしています。
TCP/IPの設定を反映し、インスタンス再起動。普通に止めようとしたら止まらなかったので強制停止。
$ db2set DB2COMM=TCPIP $ db2 update dbm cfg using SVCENAME db2c_argius DB20000I The UPDATE DATABASE MANAGER CONFIGURATION command completed successfully. $ db2stop SQL1025N The database manager was not stopped because databases are still active. $ db2stop force SQL1064N DB2STOP processing was successful. $ db2start SQL1063N DB2START processing was successful. $
サービス(リスナ)が上がっていることを確認。
$ db2 get dbm cfg | grep SVCENAME TCP/IP Service name (SVCENAME) = db2c_argius $ netstat -an | grep 50001 tcp4 0 0 *.50001 *.* LISTEN $