数据库时区未使用TZ

时间:2017-07-28 07:35:58

标签: postgresql heroku

我有一个时间戳列'submitted_on',默认为now()。 我已将heroku TZ设置为我的区域,并添加了一个具有相同时区的php用户ini。

但数据库仍在使用UTC时区。我在运行这个sql时看到了这个: show timezone;

有修复吗?或者这是heroku数据库的工作方式?我也在使用免费的dynos。

2 个答案:

答案 0 :(得分:1)

创建数据库集群时确定参数timezone

您可以更改postgresql.conf中的值,也可以使用ALTER SYSTEM作为超级用户来更改值。

我不知道Heroku是否允许您使用这些选项。

答案 1 :(得分:1)

设置TZ config var仅影响Dynos环境,因为数据库位于不同的计算机上,它不起作用。

一般来说,您应始终保持服务器时钟在UTC上运行,所有时间都以UTC格式存储,并在应用程序框架中执行任何时区/语言环境更改。