报错:java.sql.SQLNonTransientConnectionException: Could not create connection to database server

36 篇文章 1 订阅
11 篇文章 0 订阅

一、情况说明

1、我的MySQL版本是:5.7.32

2、引入的JDBC依赖版本是:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.47</version>
</dependency>

3、驱动配置:com.mysql.jdbc.Driver

4、我的Springboot版本是2.2.11

这样子是可以测试通过的。

二、常见错误

如果不加上mysql-connector-java的版本号,则会报:

java.sql.SQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.

不过,解决方案里有说让你改成:com.mysql.cj.jdbc.Driver
在这里插入图片描述
而且下面还有一句:

Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' configuration property) to use a more specific time zone value if you want to utilize time zone support

这是因为使用UTC会有8小时的时差,可设置为北京时间东八区GMT%2B8 或者上海时间Asia/Shanghai。

而Springboot版本是2.2.11默认使用的JDBC版本是6的,所以就报错了。

即使你把com.mysql.jdbc.Driver改成了com.mysql.cj.jdbc.Driver也不行。

三、思路

点击项目的 pom.xml 文件的 org.springframework.boot
在这里插入图片描述
在这里插入图片描述
ctrl + f,搜索:mysql.version
在这里插入图片描述
可以看到,我的版本的Springboot内置的mysql-connector-java版本是8.0.22的,这是不符合的,要替换掉。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值