2014-01-23 34 views
1

大家開始的PostgreSQL 9.2默認的時區

我發現開始的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?

謝謝

回答

1

在9.2之前,postgresql會在啓動時探測系統時區。這顯然是一個昂貴的檢查,所以請注意它在執行initdb時被檢測到,並且在postgresql.conf中設置了一個初始值。如果您從postgresql.conf中刪除該設置,它將使用默認的GMT。

如果您的服務器默認爲GMT,則升級時探測過程不起作用,或者您可能無意中覆蓋了conf文件中的值。

請參閱:Timezonerelease notes(搜索時區)。