linux – 无法从我的Mac连接到VM上的PSQL数据库

前端之家收集整理的这篇文章主要介绍了linux – 无法从我的Mac连接到VM上的PSQL数据库前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
尝试使用pgAdmin3从我的Mac上连接到我的CentOS VM上的Psql数据库.出现以下错误
Access to database denied
The server doesn't grant access to the database: the server reports 
FATAL: no pg_hba.conf entry for host "172.16.30.1",user "gpadmin",database "postgres",SSL off

VM的IP地址是172.16.30.139,因此我将其用作主机.我在pg_hba.conf文件添加了以下内容

local all     gpadmin     ident
#host all     gpadmin     127.0.0.1/28      trust
#host all     gpadmin     192.168.249.131/32    trust
local gpperfmon   gpmon                             md5
host     all     all     192.168.2.109   md5

其中192.168.2.109是我的Mac内部IP地址.

任何帮助,将不胜感激.

编辑:

我还运行了一个tcpdump然后尝试连接并查看以下日志(但我不知道如何阅读它们):

11:00:03.740455 IP 172.16.30.1.58043 > 172.16.30.139.postgres: S 3397342885:3397342885(0) win 65535 <mss 1460,nop,wscale 3,timestamp 837321186 0,sackOK,eol>
11:00:03.740500 IP 172.16.30.139.postgres > 172.16.30.1.58043: S 3408844558:3408844558(0) ack 3397342886 win 5792 <mss 1460,timestamp 74855527 837321186,wscale 7>
11:00:03.740630 IP 172.16.30.1.58043 > 172.16.30.139.postgres: . ack 1 win 65535 <nop,timestamp 837321186 74855527>
11:00:03.740650 IP 172.16.30.1.58043 > 172.16.30.139.postgres: P 1:9(8) ack 1 win 65535 <nop,timestamp 837321186 74855527>
11:00:03.740660 IP 172.16.30.139.postgres > 172.16.30.1.58043: . ack 9 win 46 <nop,timestamp 74855527 837321186>
11:00:03.744513 IP 172.16.30.139.postgres > 172.16.30.1.58043: P 1:2(1) ack 9 win 46 <nop,timestamp 74855531 837321186>
11:00:03.744740 IP 172.16.30.1.58043 > 172.16.30.139.postgres: . ack 2 win 65535 <nop,timestamp 837321190 74855531>
11:00:03.744816 IP 172.16.30.1.58043 > 172.16.30.139.postgres: P 9:88(79) ack 2 win 65535 <nop,timestamp 837321190 74855531>
11:00:03.746083 IP 172.16.30.139.postgres > 172.16.30.1.58043: P 2:148(146) ack 88 win 46 <nop,timestamp 74855533 837321190>
11:00:03.746318 IP 172.16.30.1.58043 > 172.16.30.139.postgres: . ack 148 win 65535 <nop,timestamp 837321191 74855533>
11:00:03.749231 IP 172.16.30.139.postgres > 172.16.30.1.58043: F 148:148(0) ack 88 win 46 <nop,timestamp 74855536 837321191>
11:00:03.749471 IP 172.16.30.1.58043 > 172.16.30.139.postgres: . ack 149 win 65535 <nop,timestamp 837321194 74855536>

解决方法

192.168.2.109可能是您内部网络上的mac地址,但172.16.30.1是虚拟网络上用于与VM通信的mac地址,这是您需要在pg_hba.conf中配置的地址.

猜你在找的Linux相关文章