Database File Layout
本节从文件和目录的层次描述存储格式。 传统上,数据库集簇所使用的配置文件和数据文件都存放在集簇的数据目录中,这个目录通常称为 PGDATA (名字来自可用于定义它的环境变量)。 PGDATA 的一个常见位置是 /var/lib/pgsql/data 。同一台机器上可以存在多个由不同服务器实例管理的集簇。 PGDATA 目录包含若干子目录和控制文件,如 表 66.1 所示。除这些必需项之外,集簇配置文件 postgresql.conf 、 pg_hba.conf 和 pg_ident.conf …
当前查看 PostgreSQL 18。
中文定义与说明
存储结构 storage-file-layout。
同版本中文手册节选
本节从文件和目录的层次描述存储格式。
传统上,数据库集簇所使用的配置文件和数据文件都存放在集簇的数据目录中,这个目录通常称为 PGDATA(名字来自可用于定义它的环境变量)。PGDATA 的一个常见位置是
/var/lib/pgsql/data。同一台机器上可以存在多个由不同服务器实例管理的集簇。
PGDATA 目录包含若干子目录和控制文件,如表 66.1 所示。除这些必需项之外,集簇配置文件
postgresql.conf、pg_hba.conf 和
pg_ident.conf 传统上也存放在 PGDATA
中,不过也可以把它们放在其他地方。
对于集簇中的每个数据库,PGDATA/base
中都有一个子目录,其名称是该数据库在 pg_database
中的 OID。这个子目录是该数据库文件的默认位置;特别是,它的系统目录就存放在这里。
说明
本节从文件和目录的层次描述存储格式。 传统上,数据库集簇所使用的配置文件和数据文件都存放在集簇的数据目录中,这个目录通常称为 PGDATA (名字来自可用于定义它的环境变量)。 PGDATA 的一个常见位置是 /var/lib/pgsql/data 。同一台机器上可以存在多个由不同服务器实例管理的集簇。 PGDATA 目录包含若干子目录和控制文件,如 表 66.1 所示。除这些必需项之外,集簇配置文件 postgresql.conf 、 pg_hba.conf 和 pg_ident.conf 传统上也存放在 PGDATA 中,不过也可以把它们放在其他地方。 对于集簇中的每个数据库, PGDATA /base 中都有一个子目录,其名称是该数据库在 pg_database 中的 OID。这个子目录是该数据库文件的默认位置;特别是,它的系统目录就存放在这里。
- 定义范围
- 同版本核心物理存储文档
PGDATA 内容
| 项目 | 说明 |
|---|---|
| PG_VERSION | 包含 PostgreSQL 大版本号的文件 |
| base | 包含各数据库子目录的目录 |
| current_logfiles | 记录日志收集器当前正在写入的日志文件的文件 |
| global | 包含集群级表(如 pg_database)的子目录 |
| pg_commit_ts | 包含事务提交时间戳数据的子目录 |
| pg_dynshmem | 包含动态共享内存子系统所用文件的子目录 |
| pg_logical | 包含逻辑解码状态数据的子目录 |
| pg_multixact | 包含多事务状态数据的子目录,用于共享行锁 |
| pg_notify | 包含 LISTEN/NOTIFY 状态数据的子目录 |
| pg_replslot | 包含复制槽数据的子目录 |
| pg_serial | 包含已提交的可串行化事务信息的子目录 |
| pg_snapshots | 包含已导出快照的子目录 |
| pg_stat | 包含统计子系统持久文件的子目录 |
| pg_stat_tmp | 包含统计子系统临时文件的子目录 |
| pg_subtrans | 包含子事务状态数据的子目录 |
| pg_tblspc | 包含指向表空间的符号链接的子目录 |
| pg_twophase | 包含预备事务状态文件的子目录 |
| pg_wal | 包含 WAL(预写式日志)文件的子目录 |
| pg_xact | 包含事务提交状态数据的子目录 |
| postgresql.auto.conf | 存储由 ALTER SYSTEM 设置的配置参数的文件 |
| postmaster.opts | 记录服务器上次启动所用命令行选项的文件 |
| postmaster.pid | 锁文件,记录当前 postmaster 的进程 ID(PID)、集群数据目录路径、postmaster 启动时间戳、端口号、Unix 域套接字目录路径(可能为空)、第一个有效的 listen_address(IP 地址或 *;未监听 TCP 时为空)以及共享内存段 ID。服务器关闭后此文件不存在。 |
相关条目
文档与源码
来源构建
- 版本
- 18.6
- 构建
- https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2
- 来源指纹
555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f
版本比较
PostgreSQL 17 → 18: 无变化。
比较已记录的接口与属性,排除来源指纹和构建元数据。某个样本中没有记录,不能据此判断实际引入或移除的版本。
相关条目
导出 JSON · 返回存储结构 · 收录范围为 PostgreSQL 10 至 20;最早采样版本不一定是实际引入版本。