python - 无法通过 Python 的 psycopg2 连接到 Postgresql 数据库

标签 python postgresql

我一直在使用带有 pgAdmin3 的 postgres 数据库,并且在连接到数据库时从未遇到过任何问题。今天我尝试使用以下代码通过 Python 访问数据库:

import psycopg2
conn_string = "dbname='db0r0373s42fkg' user='ucaj9jki7hfthu' host='ec2-107-20-189-29.compute-1.amazonaws.com' password='secret'"
conn = psycopg2.connect(conn_string)
conn.close()

我收到以下错误:

FATAL:  no pg_hba.conf entry for host "207.204.247.209", user "ucaj9jki7hfthu", database "db0r0373s42fkg", SSL off

环顾这个站点,当数据库未设置为允许我使用这些凭据登录时似乎会发生错误,但为什么它通过 pgadmin 而不是 Python 工作?

我看到另一个帖子有类似的问题(Psycopg2 reporting pg_hba.conf error),但我不太明白他们的回答,我不确定我是否遇到同样的问题 非常感谢您的帮助。

最佳答案

看来您遇到的问题与 this question 相同: 你没有通过 SSL 连接。尝试将 sslmode='require' 传递给 psycopg2.connect

关于python - 无法通过 Python 的 psycopg2 连接到 Postgresql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30902701/

相关文章:

php - 验证由 python passlib 生成的密码哈希

postgresql - Activiti BPM 平台 - 选择一个特定的模式来创建表?

database - 使用 pgadmin 连接到 heroku 数据库

mysql - 流行度公式语法错误

python - 灰度图像颜色表

python - 如何告诉 MATLAB 我正在导入的数据是一系列向量,而不仅仅是一系列字母?

sql - 如何从一行中插入不同的列?

postgresql - 为什么 psycopg2 和 pyodbc 以不同方式连接到数据库?我如何翻译连接?

python - 索引数组

python - 如何在 Python 中测试 unix 命令?