【发布时间】:2020-03-18 08:52:44
【问题描述】:
我无法使用 psycopg2 通过远程主机连接到 postgres 数据库并收到类似的错误
错误:
File "/usr/lib64/python2.7/site-packages/psycopg2/__init__.py", line 126, in connect
conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
psycopg2.OperationalError: could not connect to server: Connection timed out
Is the server running on host "192.x.x.x" and accepting
TCP/IP connections on port 5432?
注意:我做了以下更改
1.更新了 pg_hba 配置文件 托管所有所有 0.0.0.1/32 信任
2.更新了postgresql文件 listen_addresses = '*'
3.更改防火墙规则以允许从端口 5432 连接 我还需要做什么才能让它发挥作用?
【问题讨论】:
-
错误消息提示客户端无法访问服务器,因此请确保 postgres 正在侦听所需的接口:
sudo ss -lntp | grep 5432。设置listen_address后重启服务了吗? -
范围
0.0.0.1/32只包含一个主机(0.0.0.1);我怀疑这是您要允许的地址,但可以在 TCP 连接正常后修复。 -
"更改了防火墙规则以允许从端口 5432 连接" 您需要允许连接 到 5432。
-
是的,我已经完成了
-
确保
listen_addresses = '*'行没有在配置文件中注释;您确定您正确地重新启动了服务吗?ps aux | grep postgres的输出是什么?使用 pastebin 之类的东西粘贴它。
标签: postgresql psycopg2