如何正确查看和设置MySQL时区:全面指南
要查看MySQL的当前时区设置,最直接的方法是使用SQL命令 SELECT @@global.time_zone, @@session.time_zone;,这能同时显示全局和会话时区的配置,MySQL时区管理对确保时间数据的一致性至关重要,尤其是在跨时区应用中。
系统时区与MySQL时区可能不同,需通过命令 SELECT @@system_time_zone; 确认服务器系统时区,若需修改,可在配置文件(如my.cnf)中添加 default-time-zone = '+08:00' 并重启服务,或动态设置全局时区:

SET GLOBAL time_zone = '+08:00';
但动态设置重启后可能失效,建议结合配置文件永久生效。
处理时间数据时,时区影响时间函数(如NOW()、CURTIME())和存储值,若时区设置错误,时间戳可能偏差数小时,可通过 CONVERT_TZ() 函数转换特定时间值,如:
SELECT CONVERT_TZ('2023-10-01 12:00:00', '+00:00', '+08:00');
应用程序与数据库时区需保持一致,避免逻辑混乱,Java应用可通过连接参数 serverTimezone=Asia/Shanghai 同步时区,定期检查时区设置,能有效预防因时区导致的数据错误和业务故障。
未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网。
原文地址:https://www.html4.cn/9890.html发布于:2026-08-09





