MySQL修改时区的方法小结

问题现象:在数据库中的日期显示正常,但是通过JSP进行调用后发现时间偏差了13个小时。经查询,此问题是由于MySQL的默认时区设置造成的。

具体排查和操作方法如下:

一、查看MySQL当前时区和时间

> show variables like "%time_zone%";  #查看时区

MySQL修改时区的方法小结

 #time_zone说明mysql使用system的时区,system_time_zone说明system使用CST时区

 

> select curtime();  #查看时间
> select now();  #查看日期+时间

MySQL修改时区的方法小结  MySQL修改时区的方法小结  

 

二、修改时区

方法1:通过修改环境变量参数来修改时区

> set global time_zone = ‘+8:00‘; ##修改mysql全局时区为北京时间,即我们所在的东8区
> set time_zone = ‘+8:00‘; ##修改当前会话时区
> flush privileges; #立即生效

实际操作过程中,这条修改并没有成功,显示0 row(s) affected 

 

方法2:通过修改my.cnf配置文件来修改时区

# vim /etc/my.cnf
在[mysqld]区域中加上:default-time_zone = ‘+8:00‘

修改完成后,需要重启启动MySQL,配置生效。

 

MySQL修改时区的方法小结

上一篇:软件的优化(三)数据库的优化(Mysql)


下一篇:[极客大挑战 2019]HardSQL