一个数据库版本兼容问题

mysql旧的版本号是:5.3.10

本机版本号是:8.0.22

报错:"com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create"

1.程序里做兼容:

xml 复制代码
<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.13</version>
        </dependency>

2.更改mysal的驱动换成

com.mysql.cj.jdbc.Driver

3.在访问mysql的url后加入时区设置

&serverTimezone=UTC

这样就可以解决问题了!

com.mysql.cj.jdbc.Driver 和 com.mysql.jdbc.Driver 有什么区别?

回答:

com.mysql.cj.jdbc.Driver 和 com.mysql.jdbc.Driver 都是 MySQL 数据库的 JDBC 驱动类,但它们对应着不同的 MySQL JDBC 驱动版本,具有一些区别:

MySQL Connector/J 8.0 以后的版本使用 com.mysql.cj.jdbc.Driver:

com.mysql.cj.jdbc.Driver 是 MySQL Connector/J 8.0 版本及以后版本中的驱动类。

这个版本引入了一些新的功能、性能优化和改进,同时也修复了一些旧版本中的 bug。

它支持新的连接属性、时区设置等功能。

MySQL Connector/J 5.x 版本使用 com.mysql.jdbc.Driver:

com.mysql.jdbc.Driver 是 MySQL Connector/J 5.x 版本中的驱动类。

这是 Connector/J 的旧版本,如果你的应用程序使用的是这个版本,通常需要考虑升级到 8.0 版本以获取更好的性能和功能支持。

总之,com.mysql.cj.jdbc.Driver 是 MySQL Connector/J 8.0 以后版本的 JDBC 驱动类,而 com.mysql.jdbc.Driver 是 5.x 版本的 JDBC 驱动类。如果你正在创建一个新的应用程序或者进行驱动升级,建议使用 com.mysql.cj.jdbc.Driver,因为它包含了较新的功能和改进。如果你的应用程序已经使用了 5.x 版本的驱动,并且没有升级的计划,那么可以继续使用 com.mysql.jdbc.Driver,但也可以考虑升级到新版本以获得更多好处。

相关推荐
期待のcode1 小时前
MyBatisX插件
java·数据库·后端·mybatis·springboot
安审若无3 小时前
oracel迁移数据文件至其他目录操作步骤
数据库
sunxunyong4 小时前
doris运维命令
java·运维·数据库
小鸡吃米…4 小时前
Python PyQt6教程七-控件
数据库·python
忍冬行者4 小时前
清理三主三从redis集群的过期key和键值超过10M的key
数据库·redis·缓存
TimberWill5 小时前
使用Redis队列优化内存队列
数据库·redis·缓存
Knight_AL6 小时前
MySQL 中 UPDATE 语句的执行过程全解析
数据库·mysql
yngsqq6 小时前
兰顿蚂蚁——CAD二次开发
数据库
梁萌7 小时前
ShardingSphere分库分表实战
数据库·mysql·实战·shardingsphere·分库分表
川石课堂软件测试7 小时前
Mysql中触发器使用详详详详详解~
数据库·redis·功能测试·mysql·oracle·单元测试·自动化