📌  相关文章
📜  psycopg2.OperationalError:无法连接到服务器:连接被拒绝服务器是否在主机“127.0.0.1”上运行并接受端口 5432 上的 TCP IP 连接? - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:45:41.250000             🧑  作者: Mango

psycopg2.OperationalError: Unable to connect to server: Connection refused

该错误是由于连接PostgreSQL服务器时未能成功连接而导致的。通常,这是由于以下原因之一导致的:

  1. PostgreSQL服务器未运行。
  2. PostgreSQL服务器未接受来自您的IP地址的连接。
  3. 您的防火墙禁用了端口5432。
  4. 您的PostgreSQL服务器配置不正确。

以下是一些解决此错误的方法:

  1. 确认PostgreSQL服务器已启动并正在运行。您可以使用以下命令检查是否已启动:
$ sudo systemctl status postgresql

如果结果显示“postgres.service”正在运行,则说明PostgreSQL服务器正在运行。

  1. 检查PostgreSQL服务器是否接受来自您的IP地址的连接。您可以在postgresql.conf文件中检查以下属性:
listen_addresses='localhost'

如果listen_addresses设置为“localhost”,则只允许来自同一台计算机的连接。如果您希望允许来自其他计算机的连接,请将其设置为服务器的IP地址或“*”。

  1. 检查您的防火墙是否禁用了端口5432。您可以使用以下命令检查端口是否开放:
$ sudo ufw status

如果结果显示端口5432被禁用,请使用以下命令将其打开:

$ sudo ufw allow 5432/tcp
  1. 检查您的PostgreSQL服务器配置是否正确。确保您的pg_hba.conf文件正确配置了用户访问权限,以及您的postgresql.conf文件设置正确。

如果您遵循上述建议仍然无法解决问题,请考虑重新安装PostgreSQL服务器或联系您的系统管理员。