MySQL数据库常见异常记录

1 报错:

Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'.

原因:用了最新的 MySQL 连接驱动

解决: 将 com.mysql.jdbc.Driver 改为 com.mysql.cj.jdbc.Driver

Class.forName("com.mysql.jdbc.Driver");
// 改为
Class.forName("com.mysql.cj.jdbc.Driver");

2 报错:

The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone.

原因:数据库和系统时区差异

解决:在 JDBC 连接的 url 后面加上 serverTimezone=GMT 即可解决问题,如果需要使用 gmt+8 时区,需要写成 GMT%2B8,否则会被解析为空。

Connection connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1/test", "root", "123456");
// 改为
Connection connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1/test?serverTimezone=GMT%2B8", "root", "123456");

3 报错:

com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server

原因:maven 中 MySQL 依赖包的版本与系统实际 MySQL 版本不符

解决:版本改成 8.0.22

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.22</version>
</dependency>
posted @ 2021-01-19 10:57  毒药学一等生Sucy  阅读(110)  评论(0编辑  收藏  举报