MySQL 修改时区的方法
作者:mmseoamin日期:2023-12-13

文章目录

  • 什么是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();

      执行结果:

      MySQL 修改时区的方法,curtime结果,第1张

      仅打印当前时间

      select now();

      执行结果:

      MySQL 修改时区的方法,now结果,第2张

      会打印当前时间日期

      show variables like “%time_zone%”;

      执行结果:

      MySQL 修改时区的方法,show variables like,第3张

      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 修改时区的方法,修改后查询结果,第4张

      不方便重启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 修改时区的方法,配置文件,第5张

      保存配置文件后重启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”项的值修改为需要的时区即可,没有的话自己添加也可

      如果对大家有所帮助,还望不吝三连支持

      MySQL 修改时区的方法,请添加图片描述,第6张