大家
我发现开始postgresql 9.2;当安装postgresql时,postgresql时区是GMT;之前 9.2,与9.1.6一样,postgresql timiezone由系统时区设置
例如
9.1.6
postgres(at)postgres 2014-01-23_16:34:30 ([local]:5432) # select now();
+-------------------------------+
| now |
+-------------------------------+
| 2014-01-23 16:34:33.817441+08 |
+-------------------------------+
(1 row)
Time: 13.034 ms
| TimeZone | PRC
9.2.4
postgres=# select now();
now
-------------------------------
2014-01-23 08:35:27.509442+00
(1 row)
TimeZone | GMT
所以,在postgresql 9.1之后,像9.2应该在postgresql数据目录中设置postgresql时区postgresql.conf ??
感谢
答案 0 :(得分:1)
在9.2之前,postgresql会在启动时探测系统时区。这显然是一个昂贵的检查,所以请注意,在执行initdb时会检测到它,并在postgresql.conf中设置初始值。如果从postgresql.conf中删除该设置,它将使用默认值GMT。
如果您的服务器默认为GMT,则升级时探测过程不起作用,或者您可能意外覆盖了conf文件中的值。
请参阅:Timezone和release notes(搜索时区)。