报错:java.sql.SQLNonTransientConnectionException: Could not create connection to database server
一、情况说明1、我的MySQL版本是:5.7.342、引入的JDBC依赖版本是:<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.47</version></depende
一、情况说明
1、我的MySQL版本是:5.7.34
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.1
这样子是可以测试通过的。
二、常见错误
如果不加上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的,这是不符合的,要替换掉。
-----------------------------------
©著作权归作者所有:来自51CTO博客作者邵奈一shaonaiyi888的原创作品,请联系作者获取转载授权,否则将追究法律责任
报错:java.sql.SQLNonTransientConnectionException: Could not create connection to database server
https://blog.51cto.com/u_12564104/2893173
更多推荐
所有评论(0)