default-time-zone = '+8:00'
默认这个设置是没有的
但是MySQL不支持'Asia/Shanghai'这种时区格式
执行下面sql语句是报错的
SET GLOBAL time_zone = 'Asia/Shanghai'

解决方法:
到https://dev.mysql.com/downloads/timezones.html下载时区文件,官网说适合8.0以上版本,但是我的MySQL版本为5.7。

解压后得到一个sql文件,查看下sql文件内容,可以看到里面清空了4张系统表,然后重新插入了数据。

(1)由于表中执行了Truncate系统表的语句,如果生产环境担心出问题,可以将这四张表的数据导出备份。
导出备份,这里省略。
(2)登录MySQL,执行sql文件。
mysql -u root -p密码 use mysql; source timezone_posix.sql路径

(3)这时再设置时区,发现执行成功了。
SET GLOBAL time_zone = 'Asia/Shanghai';

