将 SSL 与 SQLAlchemy 结合使用 [英] Using SSL with SQLAlchemy

查看:64
本文介绍了将 SSL 与 SQLAlchemy 结合使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我最近将我的项目更改为使用 SQLAlchemy,并且我的项目运行良好,它使用了外部 MySQL 服务器.

I've recently changed my project to use SQLAlchemy and my project runs fine, it used an external MySQL server.

现在我正在尝试使用具有 SSL CA 的其他 MySQL 服务器,但它无法连接.

Now I'm trying to work with a different MySQL server with SSL CA, and it doesn't connect.

(它确实使用 MySQL Workbench 连接,所以证书应该没问题)

(It did connect using MySQL Workbench, so the certificate should be fine)

我正在使用以下代码:

ssl_args = {'ssl': {'ca': ca_path}}
engine = create_engine("mysql+pymysql://<user>:<pass>@<addr>/<schema>",
                        connect_args=ssl_args)

我收到以下错误:

无法连接到'\addr\'上的MySQL服务器([WinError 10054]一个现有的连接被远程主机强行关闭)

Can't connect to MySQL server on '\addr\' ([WinError 10054] An existing connection was forcibly closed by the remote host)

有什么建议吗?

推荐答案

我把DBAPI改成了MySQL-Connector,代码如下:

I changed the DBAPI to MySQL-Connector, and used the following code:

ssl_args = {'ssl_ca': ca_path}
engine = create_engine("mysql+mysqlconnector://<user>:<pass>@<addr>/<schema>",
                        connect_args=ssl_args)

现在它可以工作了.

这篇关于将 SSL 与 SQLAlchemy 结合使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆