You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SQLAlchemy的create_engine中添加sslmode='require'解决Postgres连接报错

SQLAlchemy连接Heroku PostgreSQL添加sslmode参数解决方案

方案1:直接修改数据库连接URL

在现有PostgreSQL连接字符串末尾追加查询参数?sslmode=require即可,修改后的代码示例:

engine = create_engine("postgres://iykazvclamrzem:140bdec1e446a9119d4fb1c9e20d89fb17716e702de72b7be09f2b2e53b86d36@ec2-50-19-127-115.compute-1.amazonaws.com:5432/d134n6bd1767sd?sslmode=require")
db = scoped_session(sessionmaker(bind=engine))

方案2:通过connect_args参数传递(推荐)

SQLAlchemy的create_engine方法支持connect_args参数,用于向底层psycopg2驱动传递额外连接参数,无需修改原有连接串:

engine = create_engine(
    "postgres://iykazvclamrzem:140bdec1e446a9119d4fb1c9e20d89fb17716e702de72b7be09f2b2e53b86d36@ec2-50-19-127-115.compute-1.amazonaws.com:5432/d134n6bd1767sd",
    connect_args={"sslmode": "require"}
)
db = scoped_session(sessionmaker(bind=engine))

两种方案任选其一即可,均可解决FATAL: no pg_hba.conf entry的连接报错。

内容的提问来源于stack exchange,提问作者Russell Mckee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 21:06:03