pg_waldump
pg_waldump — 以人类可读形式显示 PostgreSQL 数据库集簇的预写式日志
当前查看 PostgreSQL 18.6。
说明
pg_waldump — 以人类可读形式显示 PostgreSQL 数据库集簇的预写式日志
- 手册中的可执行程序
- pg_waldump
- 程序版本
- 18.6
- 参考清单
- 服务端程序
- 选项定义组
- 18
用法
pg_waldump [ option ...] [ startseg [ endseg ]]手册中的选项
| 选项与参数 | 说明 |
|---|---|
| -b --bkp-details | 输出有关备份块的详细信息。 |
| -B block --block= block | 只显示修改给定块的记录。还必须通过 --relation 或 -R 指定关系。 |
| -e end --end= end | 在指定的 WAL 位置停止读取,而不是一直读取到日志流末尾。 |
| -f --follow | 在到达有效 WAL 的末尾后,继续每秒轮询一次,等待新的 WAL 出现。 |
| -F fork --fork= fork | 只显示修改给定分支中块的记录。有效值包括:主分支为 main ,空闲空间映射为 fsm ,可见性映射为 vm ,初始化分支为 init 。 |
| -n limit --limit= limit | 显示指定数量的记录,然后停止。 |
| -p path --path= path | 指定搜索 WAL 段文件的目录,或含有存放这些文件的 pg_wal 子目录的目录。默认搜索当前目录、当前目录的 pg_wal 子目录,以及 PGDATA 的 pg_wal 子目录。 |
| -q --quiet | 除错误外不打印任何输出。如果只想知道一段 WAL 记录能否被成功解析,而不关心记录内容,则此选项会很有用。 |
| -r rmgr --rmgr= rmgr | 仅显示由指定资源管理器生成的记录。可以多次指定该选项以选择多个资源管理器。如果名称指定为 list ,则会打印有效资源管理器名称列表并退出。 |
| -R tblspc / db / rel --relation= tblspc / db / rel | 仅显示修改给定关系中块的记录。关系以表空间 OID、数据库 OID 和 relfilenode 的形式指定,中间用斜杠分隔,例如 1234/12345/12345 。这与程序输出中关系所使用的格式相同。 |
| -s start --start= start | 从指定的 WAL 位置开始读取。默认会从找到的最早文件中的第一条有效 WAL 记录开始读取。 |
| -t timeline --timeline= timeline | 读取 WAL 记录所使用的时间线。如果指定了 startseg,默认使用其中的值;否则默认为 1。此值可以用十进制或十六进制表示,例如 17 或 0x11。 |
| -V --version | 打印 pg_waldump 的版本并退出。 |
| -w --fullpage | 仅显示包含整页镜像的记录。 |
| -x xid --xid= xid | 仅显示标记有给定事务 ID 的记录。 |
| -z --stats[=record] | 显示摘要统计信息(记录和整页镜像的数量及大小),而不是显示单条记录。还可以选择按记录类型而不是按资源管理器生成统计信息。 |
| --save-fullpage= save_path | 将 WAL 记录中找到的整页镜像保存到 save_path 目录。保存的镜像会遵循与所显示记录相同的过滤和限制条件。 |
| -? --help | 显示 pg_waldump 命令行参数的帮助信息,并退出。 |
环境变量
| 变量 | 含义 |
|---|---|
| PGDATA | 数据目录;另请参阅 -p 选项。 |
| PG_COLOR | 指定诊断消息是否使用颜色。可选值为 always 、 auto 和 never 。 |
手册定义
pg_waldump
pg_waldump — 以人类可读形式显示PostgreSQL数据库集簇的预写式日志
大纲
pg_waldump [option...] [startseg [endseg]]
说明
pg_waldump显示预写式日志(WAL),主要用于调试或教学。
该工具只能由安装服务器的用户运行,因为它要求对数据目录具有只读访问权限。
选项
以下命令行选项控制输出的位置和格式:
startseg-
从指定的 WAL 段文件开始读取。这会隐式决定搜索文件时所使用的路径以及要使用的时间线。
endseg-
读取完指定的 WAL 段文件后停止。
-b--bkp-details-
输出有关备份块的详细信息。
-Bblock--block=block-
只显示修改给定块的记录。还必须通过
--relation或-R指定关系。 -eend--end=end-
在指定的 WAL 位置停止读取,而不是一直读取到日志流末尾。
-f--follow-
在到达有效 WAL 的末尾后,继续每秒轮询一次,等待新的 WAL 出现。
-Ffork--fork=fork-
只显示修改给定分支中块的记录。有效值包括:主分支为
main,空闲空间映射为fsm,可见性映射为vm,初始化分支为init。 -nlimit--limit=limit-
显示指定数量的记录,然后停止。
-ppath--path=path-
指定搜索 WAL 段文件的目录,或含有存放这些文件的 pg_wal 子目录的目录。默认搜索当前目录、当前目录的 pg_wal 子目录,以及 PGDATA 的 pg_wal 子目录。
-q--quiet-
除错误外不打印任何输出。如果只想知道一段 WAL 记录能否被成功解析,而不关心记录内容,则此选项会很有用。
-rrmgr--rmgr=rmgr-
仅显示由指定资源管理器生成的记录。可以多次指定该选项以选择多个资源管理器。如果名称指定为
list,则会打印有效资源管理器名称列表并退出。扩展可以定义自定义资源管理器,但pg_waldump不会加载扩展模块,因此无法按名称识别自定义资源管理器。作为替代,可以将自定义资源管理器指定为
custom###,其中###是三位数的资源管理器 ID。这种形式的名称始终会被视为有效。 -Rtblspc/db/rel--relation=tblspc/db/rel-
仅显示修改给定关系中块的记录。关系以表空间 OID、数据库 OID 和 relfilenode 的形式指定,中间用斜杠分隔,例如
1234/12345/12345。这与程序输出中关系所使用的格式相同。 -sstart--start=start-
从指定的 WAL 位置开始读取。默认会从找到的最早文件中的第一条有效 WAL 记录开始读取。
-ttimeline--timeline=timeline-
读取 WAL 记录所使用的时间线。如果指定了 startseg,默认使用其中的值;否则默认为 1。此值可以用十进制或十六进制表示,例如 17 或 0x11。
-V--version-
打印pg_waldump的版本并退出。
-w--fullpage-
仅显示包含整页镜像的记录。
-xxid--xid=xid-
仅显示标记有给定事务 ID 的记录。
-z--stats[=record]-
显示摘要统计信息(记录和整页镜像的数量及大小),而不是显示单条记录。还可以选择按记录类型而不是按资源管理器生成统计信息。
如果pg_waldump被信号SIGINT(Control+C)终止,则会显示截至终止点为止计算出的统计摘要。此操作在Windows 上不受支持。
--save-fullpage=save_path-
将 WAL 记录中找到的整页镜像保存到
save_path目录。保存的镜像会遵循与所显示记录相同的过滤和限制条件。整页镜像按下列文件名格式保存:
文件名由下列部分组成:TIMELINE-LSN.RELTABLESPACE.DATOID.RELNODE.BLKNO_FORK组成部分 说明 TIMELINE 记录所在 WAL 段文件的时间线,格式为一个 8 字符的十六进制数 %08XLSN 带有该镜像的记录的LSN,格式为两个 8 字符的十六进制数 %08X-%08XRELTABLESPACE 块的表空间 OID DATOID 块的数据库 OID RELNODE 块的文件节点 BLKNO 块的块号 FORK 该整页镜像来源的分支名称,例如 main、fsm、vm或init。 -?--help-
显示pg_waldump命令行参数的帮助信息,并退出。
环境
PGDATA-
数据目录;另请参阅
-p选项。 PG_COLOR-
指定诊断消息是否使用颜色。可选值为
always、auto和never。
注解
服务器运行时,可能给出错误的结果。
只显示指定的时间线(如果未指定,则使用默认时间线)。其他时间线中的记录会被忽略。
pg_waldump不能读取带有.partial后缀的 WAL 文件。如果需要读取这些文件,则必须从文件名中移除.partial 后缀。
文档与源码
来源构建
- 版本
- 18.6
- 构建
- https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2
- 来源指纹
ee8d1a3612338fd9adf250730cb640fcc5233b5491337cc00a316a44e3a0b9f8
版本比较
PostgreSQL 17 → 18: 无变化。
比较已记录的接口与属性,排除来源指纹和构建元数据。某个样本中没有记录,不能据此判断实际引入或移除的版本。
相关条目
导出 JSON · 返回命令行工具 · 收录范围为 PostgreSQL 10 至 20;最早采样版本不一定是实际引入版本。