mysql安装后记得设置时区

原文地址:https://www.cnblogs.com/jinyin/p/10969725.html

MySQL修改数据库时区

在服务器环境下(linux 或 docker),有时系统时区默认是 UTC 时区,这时需要格外注意下应用使用的时区信息。

在使用 ef + linq 执行 mysql 查询时,若查询条件中含有 Datetime.Now(),则会按 mysql 的时区信息查询,造成时间错乱。

可以使用 select now(); 来检查 mysql 的当前时间是否准确。

修改 mysql 的时区配置:

1、临时配置(重启后失效):

set time_zone = '+8:00';
set global time_zone = '+8:00';

注意,执行以上语句后,需重新连接 mysql 生效。

2、永久配置(重启仍有效):

修改 my.cnf 文件配置(修改后重启 mysql 生效):

# 设置默认时区
[mysqld]
default-time_zone='+8:00'

 

北京时间为东八区

--查看数据库时区设置
mysql> show variables like "%time_zone%";
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone | UTC    |
| time_zone        | SYSTEM |
+------------------+--------+
-修改当前会话时区,退出msql后 time_zone 会恢复成修改前的值
mysql> set time_zone = '+8:00'; ##修改mysql全局时区为北京时间,即我们所在的东8区
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like "%time_zone%";
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone | UTC    |
| time_zone        | +08:00 |
+------------------+--------+

—-修改全局会话时区
mysql> set global time_zone = '+8:00';
mysql> set time_zone = '+8:00';
mysql> flush privileges;

 

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页