将 Python
mariadb
更新至 1.1.10 后(mariadbconnector-c 版本 3.4.1)。
我无法再通过Python连接到数据库了。工作了几年,现在出现这个错误。
我现在不需要 SSL 或 TLS。服务器端不使用这个(
mysql
在NAS上synology
使用mariadb 10.11.6)。
客户端使用运行sonoma 14.6.1的macos。调试 python 代码停在该行
super().__init__(*args, **kwargs)
位于 connections.py
包中的 Connection (mariadb
) 类的 init def 中。
它似乎强制使用 SSL,但未将其设置为参数
connection = mariadb.connect(host=e_host,user=get_user_NAS(),password=get_pw_NAS(),database=database_name)
.
此代码已运行多年,因此进行了更改导致了此问题。
如何在客户端禁用此功能?
尝试将
ssl_verify_cert
设置为 false 但没有变化。尝试了以前版本的mariadb
软件包,但无法使用brew安装以前的mariadb connector-c
,只有3.4.1。所以,我现在被困住了..知道如何解决这个问题吗?
当通过终端使用客户端进行连接时,甚至不必传递 --ssl=0 作为参数来建立连接。仅当使用Python的mariadb时。
我似乎无法再连接了。
OpenSSL 3.3.2 已安装。
不幸的是,Connector/C 3.4.1 被标记为 GA 并在我的假期期间发布,因此我无法发布 Connector/Python 的匹配版本(这将在本周发生)。
要解决此问题,您有 3 个解决方案:
等到C/Python 3.1.11发布,brew提供最新版本
使用 TLS 配置您的服务器
卸载最新的 MariaDB Connector/Python 并从源代码构建它(github上的 1.1 分支)