解决mysql设置时区时的错误Unknown or incorrect time zone: 'Asia/Shanghai'

359 阅读1分钟

Mysql默认时区格式是'+8:00'的格式,这个时区可以在my.ini中[mysqld]节点下设置

default-time-zone = '+8:00'

默认这个设置是没有的

但是mysql不支持'Asia/Shanghai'这种时区格式

执行下面sql语句是报错的

set global time_zone='Asia/Shanghai'
> 1298 - Unknown or incorrect time zone: 'Asia/Shanghai'
> 时间: 0.025s

解决方法:

dev.mysql.com/downloads/t…下载时区文件

如果你的mysql版本是5.7及以下,下载上图第一个红框中的文件

解压后覆盖C:\ProgramData\MySQL\MySQL Server 5.1\Data中的文件

如果你的mysql是5.7以上,下载上图第二个红框中的文件

解压后得到一个sql文件,在sql文件同文件夹内

打开mysql命令行

mysql -u root -p密码
use mysql;
source timezone_posix.sql

然后执行语句

SET GLOBAL time_zone = 'Asia/Shanghai';
flush privileges;

重启MYSQL服务

OK,成功了!

原文地址:www.cnblogs.com/yaotome/p/1…

感谢原作者辛苦付出