相关情况
-
配置的四个必要项确认无误(driver、url、username、password)
-
其它连接工具(Datagrip、Navicat、以及IDEA自身的连接都正常)
-
但是SpringBoot项目中启动却报错,如下情况
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
排错假设
- 当将password修改为错误密码时,仍然将会报错,此时证明不是四个必要配置项的问题,要不然将会报Auth failure(初学MyBatis常见错误),即第一条错误情况是由于第二条情况引起的
- 因此将问题归咎于第二个问题,很显眼的就是SSL,即证明是SSL安全调用的问题
- 网上大部分是MySQL服务未启动、数据库连接收回的情况,但是对于确保MySQL启动以及密码正确而言,应该都不会是这些错误。
解决方法
- jdk1.8版本的291,过高,导致SSL安全调用权限出问题
- 1)进入到JDK安装目录的此目录下
- 2)打开java.security文件,利用Ctrl+F搜索SSL(在大概700多行的位置)
- 3)直接删除框选的三个即可,(建议Maven先进行Clean一下,不行就Invalidate Caches重启IDEA)再运行,将会成功解决
- 说实话,一般都直接删除前三个才会成功。如果担心的话,可以先只将第一个SSLv3,之后重启IDEA再次测试;若还是报错,则将前三个框起来的都删除,之后重启IDEA再次运行将解决