7

根据this question on how to set the time_zone in mysql and this timezone list,我认为这应该可行:

SET time_zone = 'Europe/Madrid';

但这是 sqlBuddy 记录的内容:

报告了以下错误:未知或不正确的时区:“欧洲/马德里”

4

2 回答 2

5

确保已填充时区信息表。从mysql

该值可以指定为命名时区,例如“欧洲/赫尔辛基”、“美国/东部”或“MET”。只有在 mysql 数据库中的时区信息表已创建并填充后,才能使用命名时区。

虽然我个人更喜欢以 UTC 格式存储所有日期。我发现它使推理变得更加简单,特别是在引入夏令时时。

于 2012-07-04T15:17:02.710 回答
1

如果您不想制作自己的时区设置表,另一种解决方案。

如果有自己的服务器,请保持 MySQL 不变。它默认为时区SYSTEM

Ubuntu用户可以使用

dpkg-reconfigure tzdata

对于更保守的操作系统(Centos、RedHat、Fedora)使用

tzconfig

用于更改系统时区的命令。将弹出一个 CLI 应用程序,您可以在其中选择区域和位置。它不仅是一只石头的两只鸟,而且它还可以自动适应日光变化,而无需在 MySQL 时区表中指定时间和内容。

在此处输入图像描述

不要忘记重新启动 MySQL 服务器以使更改生效。

于 2014-12-05T11:44:37.870 回答