场景
公司搭建了一个新的SpringBoot
项目,本人从远程仓库 clone 下来之后,想着先本地启动下服务瞅一眼能不能正常启动。
结果很不幸启动失败了,这很正常。(安慰自己)
程序员不就是生产BUG,修复BUG的碳基生物嘛。
喽一眼错误
2024-10-14 17:07:32.704 ERROR 23178 --- [ restartedMain] com.alibaba.druid.pool.DruidDataSource : init datasource error, url: jdbc:mysql://127.0.0.1:3306/xxxx?characterEncoding=utf-8&useSSL=false&autoReconnect=true&rewriteBatchedStatements=true&serverTimezone=UTC
java.sql.SQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
沃特链接本地数据库都能报错呢?
- 首先排除用户名密码和数据库URL的问题,因为本地数据库一直在用着呢。
- 其次可以排除的是防火墙问题。
最终是啥问题导致的呢?
<!-- 数据源连接包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.39</version>
</dependency>
是它。
因为我本地的MYSQL数据库版本是8.0,而这个新服务的mysql-connector-java
版本是5.X
解决
升级mysql-connector-java
版本到 8.0.15
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.15</version>
</dependency>
再次启动服务,成功~
希望对大家有帮助。