0

我在 php.ini 文件中将时区指定为东海岸时间:

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = America/New_York

$ service apache2 restart

但是我的数据库日期时间条目指定了西部时间(落后 3 小时)。当我在 MySQL 控制台中查看时区时,它显示的是 SYSTEM,我一直认为它来自服务器上运行的任何脚本语言。在 apache2.conf 中,我知道更改时区的方法,所以那里什么也没有。

任何人都知道如何让我的条目走上正确的轨道,而不必在我的共享服务器上运行的每个 php 文件中指定正确的时区?如果有什么安慰的话,我正在美国西部 - 俄勒冈地区运行一个 EC2 实例。我可以在我的 EC2 控制台仪表板中更改任何内容吗?

4

1 回答 1

0

“在 MySQL 控制台中,它显示 SYSTEM,我一直认为它来自服务器上运行的任何脚本语言”。

不是这样,很抱歉。@Nelson 是对的。MySQL 从 mysqld 服务器机器的默认时区设置中获取其默认时区。脚本语言的时区设置与案例无关。

您的 mysqld 是否在您的 EC2 实例中运行?如果是这样,您需要更改该操作系统实例的默认时区设置。你可以看看如何做到这一点。您可能会发现在更改默认时区后重启 EC2 实例很有帮助。

为了尽量减少混淆,最好将系统时区设置为 UTC(也称为 Z 或祖鲁时间,以前称为格林威治标准时间)。这样,当夏令时开始或关闭时,事情就不会反弹。

于 2012-09-27T01:59:02.237 回答