小白的我,将mysql5.7版本升级到了 mysql8.0,作为小白肯定希望自己软件的版本跟上最新的,感觉自己技术会蹭蹭蹭的网上涨,但是往往升级了一个开发工具,可能就牵连到其他开发工具导致不兼容的情况出现。
出现的问题

原因:
升级到8.0,会优先使用连接参数(serverTimezone)中指定的时区,如果没有指定,则再使用数据库配置的时区(美国中部时区,即-6:00),所以读取出来的时间出现偏差。
解决策略:
时区的错误,只要将时区设置为你当前系统时区即可,
下面介绍的这个办法是一次修改终身有效的办法,当然你也可以通过访问数据库的语句最后加上serverTimezone=GMT,
这次修改的是my.ini文件这个文件是数据库的配置文件,在安装的时候你选择的一些参数都保存在这里,编码也可以在这里进行修改。
1.修改my.ini

小白的文件默认位置 是C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
ProgramData这个文件夹默认是隐藏的,需要自己给他找到,进去my.ini文件直接拉到最后加上 set global time_zone=’+8:00’;
2.重启mysql
修改完成后保存退出,找到你的数据库服务(可以通过任务管理器-服务-最下方的打开服务),重启下mysql


3.搞定收工
到这里你已经完成了你的任务了,然后再次连接数据库,发现问题 解决了

本文分享了从MySQL5.7升级到8.0过程中遇到的时区偏差问题及解决方案。升级后,数据库会优先使用连接参数中的时区设置,若未指定则采用默认时区(-6:00),这可能导致时间读取偏差。文章详细介绍了如何通过修改my.ini文件中的全局时区设置来永久解决问题。
1960