设置默认时区
💥本文章所有相关PostgreSQL 14版本。
- 默认时区是指数据库服务器使用的时区设置。当插入或查询日期和时间数据时,如果没有明确指定时区信息,数据库将使用默认时区来处理。
- 在 PostgreSQL 中,可以通过修改配置文件或使用数据库命令来设置默认时区。
查看默认时区
- 首先,我们需要查看当前数据库的默认时区设置。可以使用以下命令:(返回当前数据库的默认时区名称)
shoping=> SHOW timezone;
TimeZone
---------------
GMT
(1 row)
修改默认时区
修改配置文件
- 要修改默认时区,可以编辑 PostgreSQL 的配置文件 postgresql.conf。
- 找到并打开 postgresql.conf 文件。该文件通常位于 PostgreSQL 安装目录下的 data 文件夹中。
- 搜索并定位到以下行:
#timezone = 'GMT'
- 删除行首的注释符 #,并将时区名称修改为所需的时区。例如,要将默认时区设置为 “Asia/Shanghai”,将行修改为:
timezone = 'Asia/Shanghai'
- 保存并关闭文件。重新启动 PostgreSQL 服务器才能使配置生效。
ALTER 修改
- 除了修改配置文件外,还可以使用 ALTER SYSTEM 命令来修改默认时区。这样可以避免重新启动服务器。
- 打开 PostgreSQL 的命令行界面。执行以下命令以修改默认时区:
-- 将 'Asia/Shanghai' 替换为所需的时区名称
ALTER SYSTEM SET timezone TO 'Asia/Shanghai';
- 重新加载配置文件以使更改生效:
SELECT pg_reload_conf();