前言
连接MySQL的时候动不动就提示个Server returns invalid timezone. Go to ‘Advanced‘ tab and set ‘serverTimezon
一般就是MySQL时区没设置,接下来教大家4
种解决方法。
方法一:
1.检查MySQL设置时区:
Win+R打开运行
输入cmd然后确定,打开cmd窗口
连接数据库,输入mysql -hlocalhost -uroot -p
回车输入密码
连接成功
输入show variables like'%time_zone';
回车,显示时区配置
如果显示 SYSTEM 就是没有设置时区
输入set global time_zone = '+8:00';
回车
显示Query OK, 0 rows affected (0.00 sec)就是设置成功了。
然后关闭cmd重新打开cmd重新连接数据库,连接成功后输入show variables like'%time_zone';
回车
显示+08:00
就可以了
这个时候重新连接数据库即可
点击Test Connection
进行测试连接
连接成功
方法二:
修改MySQL配置文件 [my.ini
]:
找到Mysql的安装目录,修改my.ini配置文件
比如我的路径是:
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
打开my.ini文件
在 [mysqld
] 之下加
default-time-zone='+08:00'
或者
default-time-zone=timezone
!!!注意一定要在 [mysqld
] 之下加 ,否则会出现 unknown variable 'default-time-zone=+8:00'
修改完了记得记得重启msyql
Win+X
,选择Windows PowerShell
(管理员)
停止mysql
服务
启动mysql
服务
重启完毕
打开cmd
测试
登录mysql,输入show variables like’time_zone’;
time_zone
显示为+08:00
就修改成功了
第三种方法:
在IDEA中修改时区即可
在高级栏下,将serverTimeZone
的UTC
修改为GMT
点击 高级 /Advanced
找到serverTimezone
,如果是UTC
或者空的
直接改为Asia/Shanghai
改完之后直接回车
点击 选项/General
点击 测试连接 /Test Connection
连接成功
方法四:
修改连接数据库的URL
修改serverTimezone
后面的值为Asia/Shanghai
例如:
serverTimezone=Asia/Shanghai
完整:
url: jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=true