Python用MySQL Connector连数据库遇NO_CIPHERS_AVAILABLE错误求助
解决MySQL连接时SSL无可用加密套件的错误
针对你遇到的[SSL: NO_CIPHERS_AVAILABLE]错误,提供以下几种可行的解决方法:
方法1:直接禁用SSL连接
本地连接MySQL通常不需要SSL加密,在连接参数中添加禁用SSL的配置即可:
myobj = mysql.connector.connect( host="localhost", user="root", passwd="root", database="db", ssl_disabled=True # 若该参数无效,可尝试 ssl_mode="DISABLED" ) c = myobj.cursor() if myobj.is_connected(): print("connected") else: print("not connected")
方法2:配置SSL证书(若需SSL连接)
如果业务要求必须用SSL连接,先检查MySQL服务器的SSL状态:
登录MySQL执行命令:
SHOW VARIABLES LIKE '%ssl%';
若have_ssl值为YES,则需要在连接时指定SSL证书路径:
myobj = mysql.connector.connect( host="localhost", user="root", passwd="root", database="db", ssl_ca="/path/to/ca.pem", ssl_cert="/path/to/client-cert.pem", ssl_key="/path/to/client-key.pem" )
方法3:升级mysql-connector-python
旧版本的连接器可能存在SSL兼容性问题,执行升级命令:
pip install --upgrade mysql-connector-python
内容的提问来源于stack exchange,提问作者Robot
相关产品推荐
相关产品推荐

