python - 连接到 Heroku PostgreSQL 的 Python 问题 - SSL 问题
问题描述
我正在尝试通过 Python 创建与 Heroku PostgreSQL 数据库的连接。我正在使用带有 Python 3.6.8 和 PostgreSQL 9.6 的 Windows10。
我从“ http://andyfiedler.com/2016/10/connecting-to-heroku-postgres-in-python ”中获取了这段代码
import psycopg2
import subprocess
proc = subprocess.Popen('heroku config:get DATABASE_URL -a heroku_app', stdout=subprocess.PIPE, shell=True)
db_url = proc.stdout.read().decode('utf-8').strip() + '?sslmode=require'
heroku_conn = psycopg2.connect(db_url)
当我运行该代码时,我收到错误:
OperationalError:无法创建 SSL 上下文:没有这样的过程
四处搜索表明我需要使用“--with-openssl”选项安装 PostgreSQL。或者,使用 SSL 编译。
如何在 Windows10 中执行此操作?或者,有没有其他方法可以让它发挥作用?谢谢!
解决方案
PostgreSQL 的客户端库名为“libpq”,可选择支持 SSL。您需要将连接到 PostgreSQL 的程序,以便在构建程序时启用该支持。
推荐阅读
- java - 如何在不使用 setReturnUrl 的情况下捕获和授权贝宝付款
- c# - 如何将 KeyList KeyCode 更改为 Crossplatformmobileinput?
- machine-learning - 为什么不同的批量大小在 Keras 中给出不同的精度?
- java - 在 Tensorflow Java 中嵌入模型文件到 jar
- bash - 如何在 bash 中访问命令行标志的多个选项
- javascript - 在 Hapi 路由处理程序中返回异步函数的输出
- web - 将 S3 静态网站托管中的链接重定向到没有 .html 结尾的新 URL
- python - 对象的总大小和对象值的总和
- javascript - 向 Jquery Slider 添加参考点
- django - 在 Centos7 上使用 SQLite3 与 Django 2.2 和 Python 3.6.7