java连接mysql5.7 PATH DOES NOT CHAIN WITH ANY OF THE TRUST ANCHORS

java连接mysql5.7 PATH DOES NOT CHAIN WITH ANY OF THE TRUST ANCHORS


连接:

jdbc:mysql://192.168.3.152:3308/test?useSSL=true

错误出现原因

  工作换了一台电脑,原本mysql5.5的连接没有问题,换成新环境也就是mysql5.7出现了这个错误。

解决方法

  1. 直接修改为useSSL=false
  2. mysql关闭SSL
  3. 头铁,就是要用SSL


1. 修改useSSL

既然是SSL连接错误,那我不连了,直接不使用
连接修改为:

jdbc:mysql://192.168.3.152:3308/test?useSSL=false



2.关闭mysql的SSL

同上,直接在mysql上取消SSL的功能
在my.cnf或者my.ini的[mysqld]下面加上

# 跳过ssl,不使用ssl
skip_ssl

成功后连接mysql,使用\s打印输出是这样的
在这里插入图片描述
SSL:Not in use 这样就可以了,再次启动项目也不会报错


3.继续使用SSL

上面两种都是不使用SSL来解决这个问题的,那如果说我们必须要使用呢。这里我遇到的情况是这样的:
使用命令行登录:
在这里插入图片描述
可以连接并且使用了SSL

可以看到使用命令行可以连接,使用java却不行。那么java是使用什么进行连接的呢?JDBC!所以我立马查看POM文件:
在这里插入图片描述
我使用的是springboot默认的连接器,版本是5.1.46

这个时候我认为就是连接器的问题,毕竟使用命令行连接没有任何问题,把版本换成8.0以上:

在这里插入图片描述
启动成功,没有报错。
以上的这些,都是基于我的项目来解决的,其实不一定适应所有人,而且mysql文档上连接器5.1版本其实是支持mysql5.7的:
在这里插入图片描述
mysql文档实在太多,而且问题已经解决我就没有深究。如果有人知道是什么原因导致这个问题,请发在评论区,谢谢各位!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值