原因
1.因为SSL连接原因(大部分人的原因)
因为MySQL在高版本需要指明是否进行SSL连接。有可能你 pom 文件引入的 MySQL 依赖版本是MySQL5.7及以上 这些的时候,你就需要指定SSL连接,如果你不知道,默认就是开启,所以就会出现上面的错误。
2.因为数据库连接超时原因
当数据库重启或数据库空闲连接超过设置的最大timemout时间,数据库会强行断开已有的链接。
注意: 如果出现下面错误也可以试一下这个错的解决方法
No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
解决
1.只需要设置useSSL=false来禁用SSL
例如:jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
SSL作用
在MySQL5.7之前的版本,安全性较低,存在任何用户都可以连接上数据库,所以官方在5.7版本加大了对隐私的保护。并且采用了默认 useSSL = true值防止对数据库的随意修改,到了8.0版本,仍然保留了SSL,并且默认值为 true。
2.超时解决
Ⅰwindows系统
配置 MySQL 的 my.ini
文件的 interactive_timeout=388000和wait_timeout=388000 属性。文章来源:https://www.toymoban.com/news/detail-442059.html
Ⅱ linux
系统下需要去mysql的安装目录查看my.cnf文件,然后修改同样的属性。文章来源地址https://www.toymoban.com/news/detail-442059.html
到了这里,关于数据库报错:Cause com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure(已解决)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!