异常表现
今天在ubuntu16.04系统上运行springboot项目报数据库连接错误 errorCode 0, state 08S01
数据库连接如下
url: jdbc:mysql://localhost:3306/hospital?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=CONVERT_TO_NULL
在开发电脑上运行没有问题,数据库连接一切、访问正常。
而放到服务器上运行就报以上错误。
排查
1、检查防火墙,并关闭防火墙 javascriptsudo ufw disable
,重新运行错误还在。
2、检查mysql配置
3、检查mysql错误日期 在文件发现错误 “Bad handshake” --“不好的握手”,网上查了资料,发现和 SSL 可能有关。
修改数据库连接为:
url: jdbc:mysql://localhost:3306/hospital?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false
重新运行问题解决。