如何在 MySQL 中配置时区:深入指南
MySQL 通过各种方法提供灵活的时区管理。这里有一个全面的指南,可以帮助您有效地设置时区。
my.cnf 文件中的默认时区
在 MySQL 配置文件中(“my.cnf”) "),可以使用以下指令在 [mysqld] 部分中指定默认时区:
default-time-zone='+00:00'
此行设置默认时区为 UTC(协调世界时)。
全局时区变量
@@global.time_zone 变量存储全局时区设置。要检查其当前值:
SELECT @@global.time_zone;
要设置全球时区:
SET GLOBAL time_zone = '+8:00'; SET GLOBAL time_zone = 'Europe/Helsinki';
会话时区变量
@@ session.time_zone 变量控制当前连接的时区。查看其值:
SELECT @@session.time_zone;
设置会话时区:
SET time_zone = 'Europe/Helsinki'; SET time_zone = "+00:00";
@@session.time_zone 和 @@global.time_zone 都可以返回 SYSTEM,表示时间zone 继承自 my.cnf。
附加注意
要启用命名时区(例如“欧洲/赫尔辛基”),必须正确填充 MySQL 时区表。
可以使用 TIMEDIFF() 函数获取当前时区偏移量。
UNIX_TIMESTAMP() 和 UNIX_TIMESTAMP(NOW()) 提供当前 UNIX 时间戳。
要将时间戳转换为 UNIX 时间戳,请使用 SELECT UNIX_TIMESTAMP(timestamp) FROM table_name。
要将 UTC 日期时间列检索为 UNIX 时间戳:SELECT UNIX_TIMESTAMP(CONVERT_TZ(utc_datetime, “00:00”,@@session.time_zone)) 来自table_name.
更改时区不会修改存储的日期时间或时间戳值,但会影响它们的显示方式,因为它们在内部存储为 UTC 时间戳。
以上是如何有效配置MySQL时区?的详细内容。更多信息请关注PHP中文网其他相关文章!