com.alibaba.druid.pool.DruidDataSource : create connection error, url: jdbc:mysql:// java.sql.SQLE

本文解决了因数据库驱动问题导致的MySQL时区配置错误。原始pom文件使用了最新的MySQL版本,通过将版本回滚至5.1.41,成功避免了时区配置引发的SQLException。

错误信息:

com.alibaba.druid.pool.DruidDataSource   : create connection error, url: jdbc:mysql://
java.sql.SQLException: 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 specifc time zone value if you want to utilize time zone support.

看报错信息为数据库驱动问题
原始pom文件的mysql版本是最新的

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
</dependency>

换为5.1.41的

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

运行成功

当 `com.alibaba.druid.pool.DruidDataSource` 创建连接时出现 `SQLException`,可尝试以下解决办法: #### 检查用户名和密码 点击 `application` 配置文件,查看用户名和密码是否正确,且确保密码写成字符类型。示例配置如下: ```properties # 数据库的用户名 spring.datasource.druid.username=root # 数据库的密码 spring.datasource.druid.password=123456 spring.datasource.druid.driver-class-name=com.mysql.jdbc.Driver # 数据库的连接 URL spring.datasource.druid.url=jdbc:mysql://localhost:3306/jiayunplus?useSSL=false&allowPublicKeyRetrieval=true ``` 若使用的是 `jdbc.properties` 文件,配置如下: ```properties jdbc.driver=com.mysql.cj.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/jiayunplus?useSSL=false&allowPublicKeyRetrieval=true jdbc.username=root jdbc.password=123456 ``` 这里要保证用户名和密码与数据库设置一致 [^3][^4]。 #### 检查 MySQL 版本兼容性 MySQL 8.0 以上版本与 5.0 版本可能存在兼容性问题。若遇到兼容问题,可删除本机的 MySQL 数据库,提前将数据导出为 SQL 文件,下载新的数据库再导入数据。推荐使用 `phpstudy pro` 软件,其自带 MySQL 各个版本的数据库,使用时需开启数据库 [^5]。 #### 其他检查 可根据报错信息中的 `errorCode` 和 `state` 进一步排查问题。若有具体的报错代码和状态,可参考相关文档或搜索引擎查找对应解决方案。例如,若 `errorCode` 为 1045,`state` 为 28000,可能是用户名或密码错误;若 `state` 为 08001,可能是网络连接问题等 [^1][^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值