为什么 MySQL Workbench 8.x 会出现 SSL 连接错误,请选择不支持的客户端版本协议

Csa*_*oth 5 mysql ssl openssl mysql-workbench

我有一个运行 MySQL 服务器 5.7.27 的本地开发人员环境。我使用 MySQL Workbench 6.3.10(这是 8.0 出现之前的最新版本 AFAIK)没有任何问题。但是,当我升级到 MySQL Workbench 8.0.18 并尝试连接到完全相同的本地服务器时,出现错误:

Failed to Connect to MySQL at 127.0.0.1:3306 with user root
SSL connection error: error:1425F102:SSL
routines:ssl_choose_client_version:unsupported protocol
Run Code Online (Sandbox Code Playgroud)

这不是 root 访问的问题,因为我可以连接到完全相同的服务器,而无需对 6.3.10 工作台进行任何配置更改。出于同样的原因,我相信 127.0.0.1 也不是问题。

也许它与OpenSSL有关?但是我在日志中看不到足够的信息。我得到的大部分是[Note] Bad handshake/var/log/mysql/error/log. 因此,如果我关闭 SSL 连接(强制未加密连接),Workbench 可以连接。所以很明显 Server 5.7.2x 和 8.x Workbench 之间有些不匹配,但为什么呢?

我安装了 Workbench 8.0.18 的 18.04 LTS 版本,假设我的 Ubuntu 也是这样(它是一个衍生版本)。

小智 18

好的,正如多处所指出的,该问题与您的客户端仅允许与 TLS 1.2 或更高版本通信有关,正如新的 Ubuntu 版本和软件所要求的那样,但您的服务器仅支持 TLS 1.1。并且是不允许的。

您可以将服务器更新到允许 TLS 1.2 的较新版本的 MySQL,或者如果这现在是一个大问题,唯一的解决方案是关闭工作台上的加密。为此,在工作台连接上,转到 SSL,并将“使用 SSL”设置为“否”。这肯定只是一个临时解决方案,因为出于安全问题,不建议删除 SSL。但至少,您可以连接到您的服务器。

在 MySQL Workbench 上禁用 SSL 加密