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

Python查询Redshift报Connection reset by peer但DBeaver可正常连接

Python连接Redshift报Connection reset by peer排查

问题现象

通过Python编写的两种Redshift连接代码执行查询时,均返回Connection reset by peer错误;同网络环境下使用DBeaver连接同一集群、执行相同SQL可正常运行。

复现代码1:sqlalchemy实现

connection_string = "redshift+psycopg2://%s:%s@%s:%s/%s" % (USER, PASS, HOST, str(PORT), DATABASE)
engine = sa.create_engine(connection_string)
session = sessionmaker()
session.configure(bind=engine)
sess = session()
sess.execute('SELECT * FROM MY_TABLE LIMIT 1;') 

复现代码2:redshift_connector实现

conn = redshift_connector.connect(
host=HOST,
port=PORT,
database=DATABASE,
user=USER,
password=PASS)
cursor = conn.cursor()
cursor.execute('SELECT * FROM MY_TABLE LIMIT 1;')
all_results =  cursor.fetchall()
conn.close()

遗漏配置排查项

按出现概率从高到低排序:

  • 未显式配置SSL连接
    Redshift集群默认强制要求SSL加密连接,DBeaver的官方Redshift驱动默认自动开启SSL适配,但上述两段代码均未配置SSL参数,驱动会优先尝试明文连接,直接被服务端重置连接。
    修复方式:
    • sqlalchemy连接串追加SSL参数:connection_string = "redshift+psycopg2://%s:%s@%s:%s/%s?sslmode=require" % (USER, PASS, HOST, str(PORT), DATABASE)
    • redshift_connector连接参数补充sslmode='require',如果是私有部署使用自签名证书的场景,额外增加sslrootcert参数指定根证书本地路径。
  • 驱动版本过低不支持认证协议
    现有Provisioned集群的新版本、Redshift Serverless均默认使用SCRAM-SHA-256认证协议,2.9以下版本的psycopg2、2.0.900以下版本的redshift_connector不支持该协议,会在握手阶段被服务端断开。直接将两个依赖升级到最新稳定版即可。
  • 缺少TCP保活配置
    企业内网、云环境的安全组默认会丢弃空闲超过一定时长的TCP连接,DBeaver默认内置30秒间隔的连接保活心跳,Python驱动默认无保活配置。如果是连接建立后空闲一段时间再执行查询报错,可追加保活参数:
    • sqlalchemy连接串追加:&keepalives=1&keepalives_idle=30&keepalives_interval=10&keepalives_count=5
    • redshift_connector连接参数补充tcp_keepalive=True
  • 网络访问权限校验偏差
    如果Python运行环境和DBeaver不在同一台设备,先确认Python运行环境的出口IP已加入Redshift集群安全组的5439端口入站允许列表;部分VPC端点配置会限制特定驱动的连接特征,可临时在同机器用命令行psql客户端验证连通性,排除网络层拦截。
  • 参数拼写偏差
    逐字段和DBeaver的连接配置比对host、port、database、用户名、密码,部分场景下参数拼写错误不会返回明确的"库不存在""鉴权失败"提示,会直接被服务端重置连接。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 12:15:29