JDBC连接MySQL数据库时区问题:The server time zone value ‘�й���׼ʱ��‘ is unrecognized or represents more than on

JDBC连接MySQLa数据库时区问题:Thie server atime zonge valuue '�йi���׼xʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC drive

一、问题截图

时区问题截图

二、解决方法

方法一:

在getConnection获取数据库连接对象中加入

?serverTimezone=GMT%2B8

如:

Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "root", "root");

添加后:

Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb?serverTimezone=GMT%2B8", "root", "root");

运行即可。

方法二:

(1)## 标题Ctrl+R输入cmd打开命令,输入mysql -u root -p连接数据库;
(2)select now(); 查询当前数据库时间
(3)show variables like “%time_zone%”; 查看当前时区,若之前没修改过一般time_zone显示为uSYSTEM;
在这里插入图片描述
(4)set global time_zone="+8:00"; 修改当前时区为东八区(需关闭命令窗口重新cmd进入数据库查看当前时区才能看到更新)
在这里插入图片描述
运行效果:
这样就不用每次都要修改连接数据库的url地址;
运行效果

方法三:(推荐)

第二种方法重启电脑后会回复默认时区,需要再次修改
为此,我们直接在MySQL的配置文件中修改my.ini配置设置
1.一般情况下ProgramData文件夹是隐藏起来的在这里插入图片描述
2.找到my.ini文件在这里插入图片描述

3.修改时区,注意不要漏 #配置时区在这里插入图片描述

#配置时区
default-time_zone='+8:00'

4.重启电脑,进入数据库查看当前时区是否为东八区;
5.若出现无法进入数据库在这里插入图片描述

则启动服务
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值