文章目录
- 什么是MySQL时区?
- 通过MySQL命令模式下修改
- 首先查看MySQL当前的时间
- 进行修改
- 不方便重启MySQL,临时解决时区问题
- 通过修改配置文件mysql.cnf(my.ini)来进行修改
- 总结
环境:Windows10系统,MySQL5.7版本
mysql修改时区的方法:1、在mysql命令行模式下中,执行“set global time_zone = ‘时区信息’”命令即可;2、在PHP中临时解决问题:使用mysql_query(“SET time_zone = ‘+8:00’”);在PHP与MySQL建立连接后动态修改;3、在“my.cnf(my.ini)”配置文件中,查找并将“default-time_zone”项的值修改为需要的时区即可,没有的话自己添加也可。
什么是MySQL时区?
MySQL时区是一个用于存储日期和时间的全局系统变量,它定义了在何时插入和检索日期和时间时使用的时区。如果应用程序在多个时区运行,将需要正确配置MySQL时区以确保数据准确性
通过MySQL命令模式下修改
首先查看MySQL当前的时间
select curtime();
执行结果:
仅打印当前时间
select now();
执行结果:
会打印当前时间日期
show variables like “%time_zone%”;
执行结果:
time_zone说明mysql使用system的时区,system_time_zone说明system使用CST时区
进行修改
set global time_zone = ‘+8:00’; (修改MySQL全局时区为北京时间,也就是我们所在的东8区)
set time_zone = ‘+8:00’; (修改当前会话时区)
flush privileges; (立马生效)
修改后执行show variables like ‘%time_zone%’;结果:
不方便重启MySQL,临时解决时区问题
mysql_query("SET time_zone = '+8:00'");
以PHP为例,在mysql_connect()下使用,可以临时解决,在需要的时候执行即可动态调整
通过修改配置文件mysql.cnf(my.ini)来进行修改
使用合适的文本编辑器打开MySQL配置文件(my.cnf),修改或添加以下代码:
[mysqld]
default-time-zone=+08:00 // 相应的时区设置
如果已经存在修改即可,不存在则需要添加
保存配置文件后重启MySQL服务,可以通过select语句再次查询时区查看更改是否生效
总结
以上就是本文内容了,一共说明了三种方法取修改MySQL时区:1、在mysql命令行模式下中,执行“set global time_zone = ‘时区信息’”命令即可;2、在PHP中临时解决问题:使用mysql_query(“SET time_zone = ‘+8:00’”);在PHP与MySQL建立连接后动态修改;3、在“my.cnf(my.ini)”配置文件中,查找并将“default-time_zone”项的值修改为需要的时区即可,没有的话自己添加也可
如果对大家有所帮助,还望不吝三连支持