[pgsql-jp: 34611] Re: 続JDBC でのDB接続

fwtec fwtec @ b-dash.net
2005年 1月 9日 (日) 10:35:04 JST


org.postgresql.util.PSQLException: Connection refused. Check that the 
hostname and port are correct and that the postmaster is accepting
TCP/IP connections.

サーバを起動していない、もしくは見つけられてないときにでるメッセージな
のでサーバの設定とクライアントの設定があっていないのでしょう。

クライアント(JDBC)で String url = "jdbc:postgresql:test"; のように設定
しているので 127.0.0.1:5432 の test database に接続する設定になってい
ます。

pg_hba.conf に以下が必要ですが、デフォルトで有効になっているはずです

host    all         all         127.0.0.1         255.255.255.255   trust

postgresql.conf の tcpip_socket = true が有効になっているかを確認する
ために netstat -an を実行してみてください。下記のような行があるはずで
す。

  TCP    0.0.0.0:5432           0.0.0.0:0              LISTENING

そもそも起動できているかを確認するために ps ax で postgres というプロ
セスがいるか?

$ ps ax
      PID    PPID    PGID     WINPID  TTY  UID    STIME COMMAND
      360       1     360        360    ? 1003 08:25:11 /usr/bin/cygrunsrv
      628     360     628        572    ? 1003 08:25:12 /usr/sbin/cygserver
I    2668       1    2668       2668    0 1003 10:02:03 /usr/bin/bash
     2584       1    2584       2584    ? 1003 10:25:09 /usr/bin/cygrunsrv
     3812    2584    3812       3360    ? 1003 10:25:09 /usr/bin/postgres
      872    3812    3812        872    ? 1003 10:25:09 /usr/bin/postgres
     1904     872    3812       1904    ? 1003 10:25:09 /usr/bin/postgres
     2072       1    2072       2072    1 1003 10:27:39 /usr/bin/bash
     1732    2072    1732        420    1 1003 10:31:10 /usr/bin/ps

/var/log/postmaster.log に以下のような起動成功メッセージがあるかなど
でしょうか?

$ tail /var/log/postmaster.log
(省略)
LOG:  database system is ready

それでも同じメッセージがでるようならパーソナルファイアウォールみたいな
もので通信が遮断されていないかを疑うことになるのでしょうか。

JDK は Sun JDK 1.4.2_06 を使いましたがわたしも Cygwin + PostgreSQL
7.4.5 でJDBC ドライバは pg74.215.jdbc3.jar という環境なのでちょっとた
めしてみたところ問題なく接続できましたのでサーバ側の設定の問題なんだ
とおもいます。がんばって試行錯誤してみてください。

田中祐治





pgsql-jp メーリングリストの案内