一个数据库版本兼容问题

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,但也可以考虑升级到新版本以获得更多好处。

相关推荐
虎头金猫14 小时前
openEuler 22.03 LTS 时序数据库实战:InfluxDB 深度性能评测与优化指南
网络·数据库·python·网络协议·tcp/ip·负载均衡·时序数据库
菜鸟小九14 小时前
mysql运维(读写分离)
运维·数据库·mysql
菜鸟小九14 小时前
mysql运维(分库分表)
运维·数据库·mysql
RestCloud14 小时前
SQL Server到Oracle:不同事务机制下的数据一致性挑战
数据库·oracle·sqlserver·etl·cdc·数据处理·数据传输
蝈蝈(GuoGuo)14 小时前
FireDAC][Phys][ODBC][SQLSRV32.DLL] SQL_NO_DATA FDquery
数据库·sql·oracle
蜂蜜黄油呀土豆14 小时前
MySQL Undo Log 深度解析:表空间、MVCC、回滚机制与版本演进全解
数据库·mysql·innodb·redo log·mvcc·undo log·事务日志
leoufung14 小时前
LeetCode 433:Minimum Genetic Mutation 题目理解与 BFS 思路详解
数据库·leetcode·宽度优先
张3蜂15 小时前
SQL Server 数据库 的通信加密配置SSL安全连接
数据库·安全·ssl
卿雪15 小时前
Redis 数据过期删除和内存淘汰策略
数据库·redis·缓存
by__csdn15 小时前
第一章 (ASP.NET Core入门)第二节( 认识ASP.NET Core)
数据库·后端·c#·asp.net·.net·.netcore·f#