使用 mysql 8.0以上报错:大多有两种错误,driver和时区错误问题
文章目录
使用 mysql 8.0以上报错:大多有两种错误,driver和时区错误问题
一、mysql 8.0以上的 jdbc.properties 配置文件中driver 错误
二、时区错误问题
【解决方式一】--- 时区的错误,因此只要将时区设置为你当前系统时区即可
【解决方式二】 --- 修改 jdbc.properties 配置
【解决方式三】--- 修改my.ini配置文件(优点:永久保存设置,缺点:需重启MySQL服务)
补充:自MySQL 8.0 GA版本开始支持将参数写入并且持久化:
一、mysql 8.0以上的 jdbc.properties 配置文件中driver 错误
jdbc.properties (#是注释标志,第一行最好不要写,可能会出现莫名其妙地问题,个人习惯,第一行写个注释符号)
#
driverClassName=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/数据库名?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8&useSSL=false
username=root
password=123456
mysql 8 之前 driver = com.mysql.jdbc.Driver ,很明显没有cj
二、时区错误问题
【错误如下】
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.
【解决方式一】— 时区的错误,因此只要将时区设置为你当前系统时区即可
打开cmd,执行命令登录MySQL
mysql -u root -p
执行命令:
查看mysql版本
mysql> select version();
查看时区
mysql> show variables like '%time_zone%';
设置时区
mysql> set time_zone='+8:00';
【截图如下】
【解决方式二】 — 修改 jdbc.properties 配置
就是问题一种的 jdbc.properties 配置,将url 后面的参数加上
serverTimezone=GMT%2B8,进行时区设置即可。
jdbc.properties
#
driverClassName=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/数据库名?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8&useSSL=false
username=root
password=123456
【解决方式三】— 修改my.ini配置文件(优点:永久保存设置,缺点:需重启MySQL服务)
// 方法一:使用命令(优点:不需要重启MySQL服务,缺点:一旦MySQL服务被重启,设置就会消失)
mysql> set time_zone = ‘+8:00’; mysql> set global time_zone = ‘+8:00’;
//
方法二:修改my.ini配置文件(优点:永久保存设置,缺点:需重启MySQL服务)
[mysqld]
// 设置默认时区
default-time_zone=’+8:00’
【my.ini文件在哪呢】
隐藏文件
重启一下mysql
==================================================================
补充:自MySQL 8.0 GA版本开始支持将参数写入并且持久化:
mysql> set persist time_zone='+0:00';