使用mysqyl-python连接器时SSL连接错误

时间:2019-01-10 21:11:33

标签: python mysql mysql-python

我已经设置了一个正在运行的mysql实例(并且可以通过命令行成功以root或其他用户身份登录),但是在尝试使用以下方式进行连接时:

from mysql import connector 
conn = connector.connect(user='root', password='...', host='127.0.0.1')

我得到了错误:

2026 (HY000): SSL connection error: SSL_CTX_set_tmp_dh failed

我是mysql的新手,很抱歉,如果这是一个明显的问题,但会有所帮助。

如果有帮助,这是我从命令行运行时的mysql状态:

mysql  Ver 8.0.13 for Linux on x86_64 (MySQL Community Server - GPL)

Connection id:      32
Current database:   
Current user:       root@localhost
SSL:            Not in use
Current pager:      stdout
Using outfile:      ''
Using delimiter:    ;
Server version:     8.0.13 MySQL Community Server - GPL
Protocol version:   10
Connection:     Localhost via UNIX socket
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8mb4
Conn.  characterset:    utf8mb4
UNIX socket:        /var/run/mysqld/mysqld.sock
Uptime:         1 hour 6 min 28 sec

2 个答案:

答案 0 :(得分:0)

您是否运行过mysql_ssl_rsa_setup命令?根据文档:

  

此程序创建SSL证书,密钥文件和RSA   支持使用SSL和SSL进行安全连接所需的密钥对文件   使用RSA通过未加密的连接进行安全的密码交换

答案 1 :(得分:0)

我遇到了完全相同的问题,不得不将mysql-connector-python版本从8.x.x更改为2.2.3。那完全解决了我的问题。希望这对某人有帮助。