默认时区是 UTC。 但我想把它改成GMT+2。 我尝试如下。
alter database governance set timezone = 'GMT+2';
但是不起作用。
我该如何管理?
postgresql 版本是 9.5。 它运行在 Docker 上。
谢谢!
您应该在 docker compose 文件中设置时区(需要
TZ
和 PGTZ
):
postgres:
image: postgres
environment:
TZ: 'GMT+2'
PGTZ: 'GMT+2'
参考:https://github.com/docker-library/postgres/issues/137#issuecomment-217064811
对于那些使用TZ却没有任何反应的人
我的原因是容器第一次启动时 它将 TZ 变量存储在映射卷的 PG 配置中。将 docker compose 文件更改为另一个 TZ 值后,它保持不变并且看起来不起作用。 你应该先删除数据库,然后重新启动 docker-compose
2023年
如果您使用某些 IDE PG 客户端,可能需要有关您时区的其他信息
这里是如何修复它的附加信息
要更改图像的时区,请尝试以下操作:
docker run -it -e "TZ=GMT+2" postgres:alpine
docker-compose.yml
postgres:
image: postgres:alpine
environment:
- TZ=GMT+2
您必须在
docker-compose.yml
文件中指定时区,格式如下:
postgres:
image: postgres:alpine
environment:
TZ: "Europe/Madrid"