重複として返信する前に読んでください (発生する可能性があるため)。ポストマスター (postgres) サーバーを実行しています。「sudo netstat -anp|grep 5432」の出力については、以下を参照してください。
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 29606/postmaster
unix 2 [ ACC ] STREAM LISTENING 1650581 29606/postmaster /var/run/postgresql/.s.PGSQL.5432
unix 2 [ ACC ] STREAM LISTENING 1650582 29606/postmaster /tmp/.s.PGSQL.5432
を使用してローカルホストから接続できます
psql -h localhost (OR 127.0.0.1) -d <DB> -U user -W
しかし、指定して、tcpを使用して他のホストから接続しようとすると、
psql -h ip_add_postmaster -d <DB> -U user -W
それはスローします:
psql: サーバーに接続できませんでした: 接続が拒否されました サーバーはホスト XXXXXX で実行されており、ポート 5432 で TCP/IP 接続を受け入れていますか?
ここで何が問題なのですか?
pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
postgresql.conf で、
listen_addresses = 'localhost, 127.0.0.1, ip_add_postmaster'
Note: ip_add_postmaster is same as my Elastic IP and not public DNS. If this information
matters.
ここで何が間違っていますか?マシンは Amazon EC2 でホストされており、ポート 5432 を開いています。