MySQL 时区的详尽列表
简介
MySQL 利用时区来处理各种情况日期和时间计算,但用户在访问 MySQL 时区的完整列表时遇到挑战并不少见。
MySQL 时区对主机操作系统的依赖
MySQL 设置中的有效 time_zone 值通常取决于主机操作系统。然而,查找支持的时区的详尽列表可能具有挑战性。
将时区数据加载到 MySQL
默认情况下,MySQL 不会加载时区数据,除非手动加载已加载。要加载它,请执行以下命令:
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
加载数据后,执行以下命令查看时区列表:
USE mysql; SELECT * FROM `time_zone_name`;
卸载时区数据
如果需要,可以通过执行以下命令从 MySQL 卸载时区数据:
TRUNCATE `time_zone` ; TRUNCATE `time_zone_leap_second` ; TRUNCATE `time_zone_name` ; TRUNCATE `time_zone_transition` ; TRUNCATE `time_zone_transition_type` ;
删除表的注意事项
切勿删除这些表,因为这可能会导致严重问题。
自动时区更新
为了确保定期更新时区,您可以启用root 登录无需密码提示,并设置一个 cron 作业每天执行以下脚本一次:
#!/bin/bash if [ `find /usr/share/zoneinfo -mtime -1 | grep -v '\.tab' | wc -l` -gt 0 ]; then echo "Updating MySQL timezone info" mysql_tzinfo_to_sql /usr/share/zoneinfo 2>/dev/null | mysql -u root mysql echo "Done!\n" fi
配置卡尔加里的时区
显示时间卡尔加里当地时间,使用以下时区:
America/Edmonton
示例查询
以下查询将时间戳转换为卡尔加里当地时间:
SELECT CONVERT_TZ('2023-03-08 15:00:00', 'GMT', 'America/Edmonton');
以上是如何找到 MySQL 时区的详尽列表?的详细内容。更多信息请关注PHP中文网其他相关文章!