WindowsでpgAdminを使用して、localhostのUbuntu 12.04 VMで実行されているpostgresql
9.1.8に接続しようとしています。ホストのポート5432はVMのポート5432に転送します。
pgAdminエラー:
Error connecting to the server: could not receive data from server: Software caused connection abortion (0x00002745/10053)
postgresql.conf
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
# - Connection Settings -
listen_addresses = '*'
port = 5432
pg_hba.conf
local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD
Host all all 0.0.0.0/0 md5
Host all all 127.0.0.1/32 md5
Host all all ::1/128 md5
netstat -nlp | 5432
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 29035/postgres
unix 2 [ ACC ] STREAM LISTENING 50823 29035/postgres /var/run/postgresql/.s.PGSQL.5432
iptablesルール
iptables -I INPUT -p tcp --dport 5432 -j ACCEPT
PostgreSQLサービスが再起動されましたが、pgAdminはまだエラーを出します。それを引き起こしているアイデアはありますか?
同じ問題があり、3つのステップに要約されました。
1- Mavericks(10.6+と同じ)では、ポート5432がすでに使用されているため、これが必要です。--- config.vm.network "forwarded_port"、guest:5432、Host:5433 'on' Vagrantfile 'そして、ポート5433を使用してpgadmin3経由で接続する
2- listen_address = '*'#postgresql.confで、サーバーがすべてのIPからのソケット接続としてリッスンできるようにします
3-「pg_hba.conf」でホストを有効にする必要があります
Postgresqlに必要なプロビジョニングシェルスクリプトをvagrantに配置します。
TCPパケットはINが許可されていますが、VMからホストへのOUTは許可されていますか?
INPUTルールが必要な場合は、おそらく次のようなOUTPUTルールも必要になります。
iptables -I OUTPUT -p tcp --sport 5432 -m state --state ESTABLISHED -j ACCEPT
また、次の関連質問もご覧ください。 Vagrant BoxでPostgresに接続できません-接続が拒否されました