Типът данни на Postgres timstamptz
( =timestamp with time zone
) съхранява вътрешно стойности като UTC клеймо за време (целочислена стойност, отчитаща микросекунди от 2000 г.), което е независимо от часовата зона, в която тези стойности са показани за. Правине съхранява всякаква информация за часовата зона, както някои може да си помислят, погрешно преценявайки името. Можете да изхвърляте и възстановявате колкото искате.
Какво виждате във вашия клиент зависи от настройката за часова зона на сесията.
Стартирайте (в същата сесия, за да избегнете артефакти):
SHOW timezone;
Ако видите localtime
тогава Postgres използва настройката по подразбиране на операционната система на вашия сървър.
Задайте различна часова зона (във вашата сесия с SET timezone = ...;
, за вашия потребител или глобално в конфигурационните файлове), за да видите вашите времеви марки, форматирани по различен начин. Имайте предвид, че настройката за часова зона във вашия дъмп файл не има някакъв ефект в този случай, има само настройката на текущата ви сесия.
Подробно обяснение в този свързан отговор:
Относно различните начини за задаване на променливи на средата: