2

大家好:) 我在连接这个时遇到了一点麻烦。

在 Windows 7 上,关于配置了仅主机适配器的 VitualBox 上的 Debian 6:

>nmap -T4 -A -v 192.168.56.1
[...]
5432/tcp  unknown postgresql

在 Debian 上,PostgreSQl 正在监听:

>netstat -tulpn

tcp  0  0  0.0.0.0:5432  0.0.0.0:*  LISTEN  2432/postgres
tcp6 0  0  :::5432       :::*       LISTEN  2432/postgres

.. 并且端口被打开

>iptables -nL

ACCEPT tcp  --  0.0.0.0/0  0.0.0.0./0  tcp  dpt:5432

.. 并且 Postgres 正在接受 postgresql.conf 中的所有连接

listen-addresses = '*'
port = 5432

在 Windows 中,我从 pdAdmin 收到此错误消息:

Server doesn't listen

The server doesn't accept connections: the connection library reports 

could not connect to server: Connection refused (0x0000274D/10061) 
Is the server running on host "192.168.56.1" and accepting TCP/IP 
connections on port 5432? 

If you encounter this message, please check if the server you're trying 
to contact is actually running PostgreSQL on the given port. 
Test if you have network connectivity from your client to the server 
host using ping or equivalent tools. Is your network / VPN / SSH tunnel /
 firewall configured correctly? 

For security reasons, PostgreSQL does not listen on all available 
IP addresses on the server machine initially. In order to access 
the server over the network, you need to enable listening on the 
address first. 

For PostgreSQL servers starting with version 8.0, this is controlled 
using the "listen_addresses" parameter in the postgresql.conf file. 
Here, you can enter a list of IP addresses the server should listen 
on, or simply use '*' to listen on all available IP addresses. For 
earlier servers (Version 7.3 or 7.4), you'll need to set the 
"tcpip_socket" parameter to 'true'. 

You can use the postgresql.conf editor that is built into pgAdmin III 
to edit the postgresql.conf configuration file. After changing this 
file, you need to restart the server process to make the setting effective. 

If you double-checked your configuration but still get this error 
message, it's still unlikely that you encounter a fatal PostgreSQL 
misbehaviour. You probably have some low level network connectivity 
problems (e.g. firewall configuration). Please check this thoroughly 
before reporting a bug to the PostgreSQL community. 

此致

4

1 回答 1

1

你的pg_hba.conf文件呢?
您是否已将其配置为接受来自 192.168.56.0 网络中主机的连接?
尝试添加这一行并重新启动 Postgres:

# VitualBox Host-Only Adapter
host      all     all     192.168.56.0/24     md5

如果它是一个测试环境,您甚至可以替换192.168.56.0/240.0.0.0/0并忘记它。

于 2013-08-21T09:24:59.717 回答