我试图从一个Win7主机连接到一个Win7客户端托pipe的PostgreSQL数据库。
我在pg_hba.conf中configuration了安全性
host all all 127.0.0.1/32 md5 host all all 10.0.2.15/32 md5 host all all 192.168.1.6/32 md5
并将postgresql.conf中的listen_addresses设置为'*'。
我想我已经正确设置端口转发了,如下所示:
Key: VBoxInternal/Devices/e1000/0/LUN#0/Config/win7_vm1/GuestPort, Value: 5432 Key: VBoxInternal/Devices/e1000/0/LUN#0/Config/win7_vm1/HostPort, Value: 5432 Key: VBoxInternal/Devices/e1000/0/LUN#0/Config/win7_vm1/Protocol, Value: TCP
当我打电话给getextradata。
这是类似的不能连接到VirtualBox的客人PostgreSQL,但我不知道我在做什么错了。
在vbox.log文件中我看到:
00:00:01.019 NAT:设置redirectTCP主机端口5432 =>访客端口5432 @ 10.0.2.15 00:00:01.033 NAT:无法redirectTCP 5432 => 5432
但我不知道如何解决这个问题。 有任何想法吗? 谢谢。
我的第一个问题是,你可以validation你可以连接到来宾客人的PostgreSQL?
至于端口转发失败的问题,通常是由于VirtualBox无法创build一个监听主机连接的套接字 – 最常见的原因是其他的东西已经在该端口上监听。 你还有在主机上运行的PostgreSQL吗?
看看微软SysInternals团队的TCPView工具。 它可以向您显示活动的TCP端点及其拥有的过程。 这应该可以帮助您确定是否有东西抓住了TCP 5432以及它是什么。 在主机上运行它 – 如果您想validationPostgreSQL正在运行并监听连接,请在guest虚拟机上运行它。
TCPView: http : //technet.microsoft.com/en-us/sysinternals/bb897437
如果数据库托pipe在主机上,则不需要端口转发,只需将该guest虚拟机指向NAT主机(通过ipconfig标识)即可。