Ich habe mehrere PostgreSQL 9.2-Installationen, bei denen die von PostgreSQL verwendete Zeitzone GMT ist, obwohl das gesamte System "Europa / Wien" ist. Ich doppelt überprüft , dass postgresql.conf
sie nicht enthält timezone
Einstellung, so nach der Dokumentation es auf das System des Zeitzone Rückfall soll.
Jedoch,
# su -s /bin/bash postgres -c "psql mydb"
mydb=# show timezone;
TimeZone
----------
GMT
(1 row)
mydb=# select now();
now
-------------------------------
2013-11-12 08:14:21.697622+00
(1 row)
Irgendwelche Tipps, woher die GMT-Zeitzone kommen könnte? Der Systembenutzer hat TZ
und eingestellt /etc/timezone
und /etc/timeinfo
scheint richtig konfiguriert zu sein.
# cat /etc/timezone
Europe/Vienna
# date
Tue Nov 12 09:15:42 CET 2013
Alle Hinweise sind dankbar, danke im Voraus!
quelle
postgresql.conf
Version 9.2+ anzugeben, dass die Zeitzone der Systemumgebung weiterhin automatisch erkannt werden soll?Ich habe einen Workaround dafür gefunden.
Erstellen Sie einfach einen Symlink in / usr / share / zoneinfo / named localtime (oder einen beliebigen Namen, den Sie möchten), der auf / etc / localtime verweist
Auf diese Weise erstellen Sie eine Reihe von Links, die letztendlich auf die Zeitzone Ihres Systems verweisen.
Nehmen Sie nun den Namen des von Ihnen erstellten Links ( in meinem Fall localtime ) und verwenden Sie ihn als Wert des Konfigurationselements in postgresql.conf
starte postgresql neu und überprüfe die Zeit mit "SELECT now ();" und "Zeitzone anzeigen".
quelle