↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
测试与开发版本: 19 / devel
不受支持的版本: 13
历史版本PostgreSQL 13 已于 2025 年 11 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本。

第 72 章 备份清单格式

pg_basebackup 生成的备份清单,主要是为了允许使用 pg_verifybackup 验证备份。不过,其他工具也可以读取备份清单文件,并将其中包含的信息用于它们自己的用途。为此,本章描述备份清单文件的格式。

备份清单是一个以 UTF-8 编码的 JSON 文档。(尽管一般来说 JSON 文档必须是 Unicode,但 PostgreSQL 允许将 json 和 jsonb 数据类型用于任何受支持的服务器编码。备份清单则没有类似的例外。)该 JSON 文档始终是一个对象;该对象中出现的键将在下一节中说明。

72.1. 备份清单顶层对象 #

备份清单 JSON 文档包含以下键。

PostgreSQL-Backup-Manifest-Version

其对应的值始终为整数 1。

Files

其对应的值总是一个对象列表,其中每个对象描述备份中存在的一个文件。为了使用该备份所需的 WAL 文件,以及备份清单文件本身,都不会在此列表中出现条目。该列表中每个对象的结构见第 72.2 节。

WAL-Ranges

其对应的值总是一个对象列表,其中每个对象描述一个 WAL 记录范围。为了使用该备份,必须能够从某条特定时间线上读取该范围内的 WAL 记录。这些对象的结构在第 72.3 节中有进一步说明。

Manifest-Checksum

该键总是出现在备份清单文件的最后一行。其对应的值是此前所有行的 SHA256 校验和。这里使用固定的校验和方法,是为了让客户端能够对清单进行增量解析。尽管 SHA256 校验和明显比 CRC32C 校验和开销更高,但清单通常足够小,因此这些额外计算一般并不重要。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。