MySQL连接报错No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
降低基础镜像的jdk版本,改为与本地一致的1.8.0_131。修改jdk的配置文件,去除对ssl协议的限制,可以参考。这个报错的意思是说连接协议被禁用或密码不对。本地连接没问题,容器部署后连接失败。
·
背景
本地连接没问题,容器部署后连接失败。
- MySQL版本:5.7.22
- JDK版本:1.8.0_312
现象
Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
这个报错的意思是说连接协议被禁用或密码不对。
排查过程
- 排查用户名密码是否正确——正确
- 排查网络是否通畅——通畅
- 我本地使用的是jdk1.8.0_172,打镜像时,基础镜像里的jdk版本是1.8.0_312。怀疑是不是jdk版本导致。通过在网上的搜索发现,jdk1.8的高版本确实对SSL协议做了限制。
解决方案
此处给出三种解决方案:
-
降低基础镜像的jdk版本,改为与本地一致的1.8.0_131。
-
修改jdk的配置文件,去除对ssl协议的限制,可以参考《Java调用ssl异常,javax.net.ssl.SSLHandshakeException: No appropriate protocol》
-
最简单的方法,直接在连接MySQL时,连接参数里禁用SSL:
useSSL=false
更多推荐
已为社区贡献2条内容
所有评论(0)