繁体   English   中英

使用 psycopg2 与 postgresql 的连接被拒绝

[英]Connection refused with postgresql using psycopg2

psycopg2.OperationalError:无法连接到服务器:连接被拒绝

服务器是否在主机“45.32.1XX.2XX”上运行并在端口 5432 上接受 TCP/IP 连接?

在这里,我打开了插座。

tcp        0      0 127.0.0.1:5432          0.0.0.0:*  LISTEN      11516/postgres                
tcp6       0      0 ::1:5432                :::*       LISTEN      11516/postgres

我搜索了一下我应该修改这个pg_hba.conf ,但是在我的postgresql根文件中,我根本没有找到这个文件。

我也成功连接了我的另一台服务器。

谢谢。

在这里,我已经修改了pg_hba.conf ,更新了这个host all all 218.3.AB trust并重新加载。但它也没有用。

您的 netstat 输出显示 postgres 正在侦听127.0.0.1 ,但您的错误表明您正在尝试连接到45.32.1XX.2XX 我很确定您已经诊断出您的问题。

你需要修改你的postgresql.conf文件(不是pg_hba.conf )的listen_addresses设置。 postgresql.conf文件位于您的 postgresql 数据目录中,该目录通常类似于/var/lib/postgresql/data/var/lib/pgsql/data

此处记录listen_addresses参数。

1. Modify two configure files
# vi /var/lib/pgsql/data/postgresql.conf
 Replace the line:
listen_addresses = 'localhost'  -> listen_addresses = '*'
# vi /var/lib/pgsql/data/pg_hba.conf
 Add the line at the very end:
host all all 0.0.0.0/0 trust
(If IPv6:
host all all ::/0 trust) 
2. Restart the database service
# service postgresql restart
3. Disable the firewall
# rcSuSEfirewall2 stop
# chkconfig SuSEfirewall2 off
# chkconfig SuSEfirewall2_init off

psycopg2.OperationalError:无法连接到服务器:连接被拒绝

服务器是否在主机“ 45.32.1XX.2XX”上运行并在端口5432上接受TCP / IP连接?

在这里,我打开了我的插座。

tcp        0      0 127.0.0.1:5432          0.0.0.0:*  LISTEN      11516/postgres                
tcp6       0      0 ::1:5432                :::*       LISTEN      11516/postgres

我用谷歌搜索应该修改这个pg_hba.conf ,但是在我的postgresql根文件中,我根本没有找到这个文件。

另外,我还成功连接了另一台服务器。

谢谢。

在这里,我修改了pg_hba.conf ,更新了该host all all 218.3.AB trust并重新加载。但是它也不起作用。

取消注释 listen_address 行并引入 '*' 对我有用。 一开始没有它就可以工作(带有 Postgres 数据库的 gunicorn)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM