目录版本号

定义系统目录版本的数字

目录版本号 是一个定义 系统目录 版本的数字。

目录版本号 的目的是防止 PostgreSQL 实例启动时使用格式不兼容的数据目录。这通常只在运行预发布开发版本时才相关,因为在主要发布版本的整个生命周期中,目录版本号 保持稳定。

目录版本号PostgreSQL 7.0 中添加。

格式

目录版本号 的格式为 YYYYMMDDN,表示该数字更改的日期,其中 N 表示一个简单的计数器,以容纳同一日期发生的多次更改。

获取目录版本号

目录版本号 包含在 pg_control 文件中,可以使用 pg_controldata 工具或从 pg_control_system() 函数(PostgreSQL 9.6 及更高版本)中检索。

示例如下。

用法

目录版本号 是内部实现细节,对于正常的数据库操作没有特殊意义。

唯一可能在一定程度上看到它的地方是在 表空间目录 中创建的内部目录名称的一部分。

源代码

目录版本号 定义在 src/include/catalog/catversion.h 中。

变更历史

示例

pg_control 获取目录版本号

pg_controldata -D /var/lib/pgsql/data
pg_control version number:            1300
Catalog version number:               202010291
Database system identifier:           6891881161586929758
...

pg_control_system() 获取目录版本号

postgres=# SELECT catalog_version_no FROM pg_control_system();
 catalog_version_no 
--------------------
          202010291
(1 row)

分类

PostgreSQL 内部, PostgreSQL 版本控制

另请参阅

XLOG_PAGE_MAGIC

反馈

提交关于“目录版本号”的任何评论、建议或更正,请在此