pg_checksums
描述 pg_checksums 用于在 PostgreSQL 数据库集簇中检查、启用或禁用数据校验和。运行 pg_checksums 之前,必须先将服务器干净关闭。验证校验和时,如果没有校验和错误,则退出状态为零;如果检测到至少一个校验和失败,则退出状态为非零。启用或禁用校验和时,如果操作失败,则退出状态为非零。 在验证校验和时,集簇中的每个文件都会被扫描。启用校验和时,校验和发生变化的每个关系文件块都会被原地重写。禁用校验和只会更新文件 pg_control 。 选项 提供以下命令行选项: …
当前查看 PostgreSQL 18。
中文定义与说明
命令行工具 pg_checksums [ option ...] [[ -D | --pgdata ] datadir ]。
同版本中文手册节选
描述
pg_checksums 用于在 PostgreSQL 数据库集簇中检查、启用或禁用数据校验和。运行 pg_checksums 之前,必须先将服务器干净关闭。验证校验和时,如果没有校验和错误,则退出状态为零;如果检测到至少一个校验和失败,则退出状态为非零。启用或禁用校验和时,如果操作失败,则退出状态为非零。
在验证校验和时,集簇中的每个文件都会被扫描。启用校验和时,校验和发生变化的每个关系文件块都会被原地重写。禁用校验和只会更新文件 pg_control。
选项
提供以下命令行选项:
-Ddirectory--pgdata=directory指定存储数据库集簇的目录。
-c--check检查校验和。如果没有指定其他模式,这是默认模式。
-d--disable禁用校验和。
-e--enable启用校验和。
-ffilenode--filenode=filenode仅验证文件节点为
filenode的关系中的校验和。-N--no-sync默认情况下,
pg_checksums会等待所有文件被安全写入磁盘。该选项会使pg_checksums直接返回而不等待,这样速度更快,但也意味着如果随后操作系统崩溃,更新后的数据目录可能会损坏。通常,此选项适合测试,但不应在生产环境中使用。使用--check时,此选项不起作用。-P--progress启用进度报告。启用此选项后,在检查或启用校验和时会输出进度报告。
--sync-method=method设为
fsync(默认值)时,pg_checksums会递归打开并同步数据目录中的所有文件。查找文件时会跟随 WAL 目录和每个已配置表空间的符号链接。在 Linux 上,也可以改用
syncfs,请求操作系统同步包含数据目录、WAL 文件以及每个表空间的整个文件系统。使用syncfs时需注意的事项见 recovery_init_sync_method。使用
--no-sync时,此选项不起作用。-v--verbose启用详细输出,列出所有被检查的文件。
-V--version打印 pg_checksums 版本并退出。
-?--help显示关于 pg_checksums 命令行参数的帮助并退出。
说明
描述 pg_checksums 用于在 PostgreSQL 数据库集簇中检查、启用或禁用数据校验和。运行 pg_checksums 之前,必须先将服务器干净关闭。验证校验和时,如果没有校验和错误,则退出状态为零;如果检测到至少一个校验和失败,则退出状态为非零。启用或禁用校验和时,如果操作失败,则退出状态为非零。 在验证校验和时,集簇中的每个文件都会被扫描。启用校验和时,校验和发生变化的每个关系文件块都会被原地重写。禁用校验和只会更新文件 pg_control 。 选项 提供以下命令行选项: -D directory --pgdata= directory 指定存储数据库集簇的目录。 -c --check 检查校验和。如果没有指定其他模式,这是默认模式。 -d --disable 禁用校验和。 -e --enable 启用校验和。 -f filenode --filenode= filenode 仅验证文件节点为 filenode 的关系中的校验和。 -N --no-sync 默认情况下, pg_checksums 会等待所有文件被安全写入磁盘。该选项会使 pg_checksums 直接返回而不等待,这样速度更快,但也意味着如果随后操作系统崩溃,更新后的数据目录可能会损坏。通常,此选项适合测试,但不应在生产环境中使用。使用 --check 时,此选项不起作用。 -P --progress 启用进度报告。启用此选项后,在检查或启用校验和时会输出进度报告。 --sync-method= method 设为 fsync (默认值)时, pg_checksums 会递归打开并同步数据目录中的所有文件。查找文件时会跟随 WAL 目录和每个已配置表空间的符号链接。 在 Linux 上,也可以改用 syncfs ,请求操作系统同步包含数据目录、WAL 文件以及每个表空间的整个文件系统。使用 syncfs 时需注意的事项见 recovery_init_sync_method 。 使用 --no-sync 时,此选项不起作用。 -v --verbose 启用详细输出,列出所有被检查的文件
- 手册中的可执行程序
- pg_checksums
- 程序版本
- 18.6
- 参考清单
- 服务端程序
- 选项定义组
- 11
用法
pg_checksums [ option ...] [[ -D | --pgdata ] datadir ]手册中的选项
| 选项与参数 | 说明 |
|---|---|
| -D directory --pgdata= directory | 指定存储数据库集簇的目录。 |
| -c --check | 检查校验和。如果没有指定其他模式,这是默认模式。 |
| -d --disable | 禁用校验和。 |
| -e --enable | 启用校验和。 |
| -f filenode --filenode= filenode | 仅验证文件节点为 filenode 的关系中的校验和。 |
| -N --no-sync | 默认情况下, pg_checksums 会等待所有文件被安全写入磁盘。该选项会使 pg_checksums 直接返回而不等待,这样速度更快,但也意味着如果随后操作系统崩溃,更新后的数据目录可能会损坏。通常,此选项适合测试,但不应在生产环境中使用。使用 --check 时,此选项不起作用。 |
| -P --progress | 启用进度报告。启用此选项后,在检查或启用校验和时会输出进度报告。 |
| --sync-method= method | 设为 fsync (默认值)时, pg_checksums 会递归打开并同步数据目录中的所有文件。查找文件时会跟随 WAL 目录和每个已配置表空间的符号链接。 |
| -v --verbose | 启用详细输出,列出所有被检查的文件。 |
| -V --version | 打印 pg_checksums 版本并退出。 |
| -? --help | 显示关于 pg_checksums 命令行参数的帮助并退出。 |
环境变量
| 变量 | 含义 |
|---|---|
| PGDATA | 指定存储数据库集簇的目录;可以用 -D 选项覆盖。 |
| PG_COLOR | 指定诊断消息是否使用颜色。可选值为 always 、 auto 和 never 。 |
文档与源码
来源构建
- 版本
- 18.6
- 构建
- https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2
- 来源指纹
ee8d1a3612338fd9adf250730cb640fcc5233b5491337cc00a316a44e3a0b9f8
版本比较
PostgreSQL 18 → 19: 属性变化。
以下差异保留原始字段名与英文源描述。
--- PostgreSQL 18
+++ PostgreSQL 19
@@ -13,10 +13,10 @@
{
"description": "Specifies the directory where the database cluster is stored.",
"names": [
- "-D directory",
- "--pgdata= directory"
+ "-D datadir",
+ "--pgdata= datadir"
],
- "signature": "-D directory --pgdata= directory"
+ "signature": "-D datadir --pgdata= datadir"
},
{
"description": "Checks checksums. This is the default mode if nothing else is specified.",
@@ -99,6 +99,6 @@
}
],
"synopsis": [
- "pg_checksums [ option ...] [[ -D | --pgdata ] datadir ]"
+ "pg_checksums [ option ...] [ [ -D | --pgdata ] datadir ]"
]
}
比较已记录的接口与属性,排除来源指纹和构建元数据。某个样本中没有记录,不能据此判断实际引入或移除的版本。
相关条目
导出 JSON · 返回命令行工具 · 收录范围为 PostgreSQL 12 至 20;最早采样版本不一定是实际引入版本。