mysql修改和查看时区(十五)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql修改和查看时区(十五)相关的知识,希望对你有一定的参考价值。

参考技术A 1. 查看时区命令

2. GMT、UTC、DST、CST时区代表的意义

2.1 GMT:Greenwich Mean Time 

2.2 UTC: Coordinated Universal Time

2.3 DST: Daylight Saving Time

2.4 CST:Central Standard Time

3.  修改时区

3.1 仅修改当前会话的时区,停止会话失效(CET)

3.2 修改全局的时区配置

修改MySQL时区

查看数据库时区

mysql> show variables like ‘%time_zone%‘;
 +------------------+--------+
 | Variable_name | Value | 
 +------------------+--------+ 
 | system_time_zone | CST |
 | time_zone | CST -07:00|
 +------------------+--------+ 
 2 rows in set (0.00 sec)   这里CST -07:00代表北美时间

mysql默认使用的SYSTEM时区,即EST时区,查询相关资料可知,EST时区要比北京时间(东八区)慢13个小时,在数据库中的表现即为:

mysql> select now();
     +---------------------+
     | now() |
     +---------------------+ 
     | 2017-03-09 21:24:39 |
     +---------------------+
 1 row in set (0.00 sec)

那我们怎么修改,有两种方法,一种是临时的,一种是长久的。
一:通过sql命令临时修改

# 设置全局时区 mysql> set global time_zone = ‘+8:00‘;
Query OK, 0 rows affected (0.00 sec) 
# 设置时区为东八区 mysql> set time_zone = ‘+8:00‘; 
Query OK, 0 rows affected (0.00 sec) 
# 刷新权限使设置立即生效 mysql> flush privileges; 
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like ‘%time_zone%‘;
 +------------------+--------+
 | Variable_name | Value |
 +------------------+--------+
 | system_time_zone | EST |
 | time_zone | +08:00 | 
 +------------------+--------+
 2 rows in set (0.00 sec)

二:修改my.cnf实现永久修改

   vi /etc/mysql/my.cnf

然后在mysqld下边的配置中添加一行:

default-time_zone = ‘+8:00‘

然后重启mysql

service mysql restart

以上是关于mysql修改和查看时区(十五)的主要内容,如果未能解决你的问题,请参考以下文章

如何修改mysql url链接指定时区

MySQL修改时区

MySQL修改时区的方法小结

修改MySQL时区

MySQL修改数据库时区

mysql设置时间