我知道这是一个流行的问题。我已经尝试了类似threads中建议的所有方法。我正在尝试远程连接到位于Azure Windows Server 2012机器上的PostgreSQL数据库。我尝试了以下操作...
postgresql.conf
listen_addresses = '*'
pg_hba.conf
# IPv4 local connections:
host all all 0.0.0.0/0 md5
防火墙
新的入站规则(防火墙)协议和端口 > 协议类型 > TCP
本地端口 > 5432 远程端口 > 所有
获取远程计算机的IP地址
我从Azure仪表板上复制,也按照远程桌面连接顶部指示的方式执行。
来自本地计算机的CMD
然后从本地计算机尝试了以下操作。
psql -U postgres -h 13.xx.xx.xx
错误信息。
psql: 无法连接服务器:连接超时 (0x0000274C/10060) 服务器是否在主机“13.xx.xx.xx”上运行,并且正在接受端口5432上的TCP/IP连接?
我不确定还应该做什么。
listen_addresses
和pg_hba.conf
设置后,您是否重新启动 Postgres? pg_hba.conf更改仅需要重新加载,但是listen_addresses
更改需要重新启动。 您可以通过运行select current_setting('listen_addresses');
从Postgres验证更改。如果Azure使用PG10,则可以通过select * from pg_catalog.pg_hba_file_rules();
检查您的pg_hba设置。 - bma