连接HarperDB遇requests.exceptions.ConnectionError,求解决指导
解决方案:HarperDB连接出现requests.exceptions.ConnectionError(Errno 11002 getaddrinfo failed)
错误本质定位
getaddrinfo failed 核心是域名解析失败,结合你ping HarperDB地址失败但能ping通8.8.8.8的情况,问题集中在域名正确性、DNS解析或HarperDB Cloud的网络配置上。
具体排查/修复步骤
- 核对域名一致性:你代码里的HARPERDB_URL是
https://cloud1-mike.harperdbcloud.com,但错误信息里的请求host是cloud1-thellmike.harperdbcloud.com,两者域名不一致!立即登录HarperDB Cloud控制台,复制官方提供的实例Endpoint替换代码中的URL,这是最可能的直接原因。 - 排查DNS解析问题:
- 执行命令
nslookup cloud1-thellmike.harperdbcloud.com(Windows)或dig cloud1-thellmike.harperdbcloud.com(Mac/Linux),查看是否能返回有效IP。 - 如果解析无结果,刷新本地DNS缓存:Windows用
ipconfig /flushdns,Mac/Linux用sudo systemd-resolve --flush-caches。
- 执行命令
- 配置HarperDB Cloud IP白名单:
- HarperDB Cloud的白名单功能在控制台的「Instance Settings」→「Network Access」菜单下,添加你的公网出口IP(可通过
curl ifconfig.me查询),不要填写内网IP。
- HarperDB Cloud的白名单功能在控制台的「Instance Settings」→「Network Access」菜单下,添加你的公网出口IP(可通过
- 网络拦截排查:
- 用
curl -v https://cloud1-thellmike.harperdbcloud.com测试连接,查看具体拦截环节。 - 检查本地防火墙、杀毒软件是否拦截443端口出站请求;如果是公司网络,联系IT开放对应域名/IP的443端口权限。
- 用
内容的提问来源于stack exchange,提问作者thellmike
相关产品推荐
相关产品推荐

