我最近使用VMware Workstation 8设置和运行Windows 2008 r2服务器。
我正在使用Postgresql 9.1运行Centos 6.2虚拟Linux机器。一切似乎都在本地,我可以通过桥接网络连接连接到CentOS盒。
我已经按照David Ghedini's演练来设置Postgresql 9.1。所以我能够启动一个putty会话窗口,以root身份登录并启动psql shell并以postgres用户身份发出语句。我的问题是我无法使用Windows 7客户端中的pgAdmin III进行连接。我已更新/var/lib/pgsql/9.1/data/postgresql.conf
以启用listen_addresses'*'等。
任何人都可以给我任何关于找到我的错误的提示。确保Windows服务器上也禁用了Windows防火墙。
pgAdmin III客户端报告;
'服务器不听'
服务器不接受连接:连接库报告
无法连接到服务器:连接超时(0x0000274C / 10060)服务器是否在主机“192.168.1.26”上运行并接受端口5432上的TCP / IP连接?
这是添加的pg_hba.conf
文件条目:
#TYPE DATABASE USER ADDRESS METHOD
host all all 192.168.1.0/24 trust
并添加了iptables文件:
-A INPUT -p tcp -s 0/0 --sport 1024:65535 -d 192.168.1.26 --dport 5432 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -s 192.168.1.26 --sport 5432 -d 0/0 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
答案 0 :(得分:13)
您需要调整pg_hba.conf
:
http://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html
添加自己的主机和相应的用户后,重新启动postgresql服务器,希望您可以连接。
此外,您可能需要在网络上启用它的端口: http://www.cyberciti.biz/tips/postgres-allow-remote-access-tcp-connection.html
答案 1 :(得分:1)
确保允许PostgreSQL Server通过防火墙:
在服务器计算机上,转到
控制面板>系统和安全性> Windows防火墙>允许应用 通过Windows防火墙
滚动浏览允许的应用和功能,确保选中“PostgreSQL Server”。
答案 2 :(得分:0)
服务器是否在主机“192.168.1.26”上运行并接受TCP / IP 端口5432上的连接?
检查服务器是否具有该IP地址。检查是否有postgres
进程正在运行。使用netstat确认服务器正在侦听端口5432。
答案 3 :(得分:0)
我有同样的问题。我禁用了我的所有第三方防病毒软件和防火墙,并重新安装了PostgreSQL,它现在工作正常... :)
答案 4 :(得分:0)
可能是防火墙问题,请通过以下方式进行检查
systemctl status firewalld.service
您可以通过以下方式将其禁用:
systemctl stop firewalld.service
systemctl disable firewalld.service
答案 5 :(得分:0)
除了上面的出色答案外,在实施所有防火墙规则并更改了配置文件后,它仍未连接到主机的IP地址。然后我意识到我已经在安装了postgres db的主机上本地安装了pgadmin。我不需要为主机使用外部IP地址,只需要在pgadmin连接过程中连接到“ localhost”即可。极其令人沮丧,但很有意义。所以,如果你
然后……也许也许,尝试连接到“ localhost”或“ 127.0.0.1”。
值得一试!
答案 6 :(得分:0)
我遇到了你的同样问题:
无法连接到服务器:连接超时(0x0000274C / 10060)服务器是否在主机“ 192.168.1.26”上运行并接受端口5432上的TCP / IP连接?
也许您需要将反向IP 设置为白名单:
26.1.168.192
答案 7 :(得分:0)
还应该允许防火墙上的端口5432。
centos 8上的示例:
sudo firewall-cmd --zone = public --add-port = 5432 / tcp --permanent