Postgresql 中文操作指南

pg_waldump

pg_waldump ——显示 PostgreSQL 数据库群集的预写日志的可读渲染内容

Synopsis

pg_waldump [ option …​] [ startseg [ endseg ]]

Description

pg_waldump 显示预写日志 (WAL),主要用于调试或教学目的。

只有安装服务器的用户可以运行此实用程序,因为它需要对数据目录具有只读访问权。

Options

以下命令行选项控制输出的位置和格式:

  • startseg

    • 开始读取指定 WAL 段文件。这会隐式确定在其中搜索文件和要使用的的时间线。

  • endseg

    • 读取到指定 WAL 段文件后停止。

  • -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 子目录和 PGDATApg_wal 子目录中搜索。

  • -q_—​quiet_

    • 不要打印任何输出,除了错误。当您想知道一段 WAL 记录是否可以成功解析,但不在乎记录内容时,此选项很有用。

  • -r _rmgr—​rmgr=_rmgr

    • 仅显示由指定的资源管理器生成的记录。您可以多次指定此选项以选择多个资源管理器。如果 list 传递为名称,则打印有效资源管理器名称列表,然后退出。

    • 扩展可以定义自定义资源管理器,但 pg_waldump 不加载扩展模块,因此不会按名称识别自定义资源管理器。相反,您可以将自定义资源管理器指定为 custom ,其中 " " 是三位资源管理器 ID。此格式的名称始终被认为有效。

  • -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。该值可以十进制或十六进制指定,例如 170x11

  • -V_—​version_

    • 打印 pg_waldump 版本,然后退出。

  • -w_—​fullpage_

    • 仅显示包含全页图像的记录。

  • -x _xid—​xid=_xid

    • 仅显示标记有给定事务 ID 的记录。

  • -z_—​stats[=record]_

    • 显示摘要统计信息(记录和全页图像的数量和大小),而不是单个记录。也可以按记录统计,而不是按每个 RMGR 统计。

    • 如果 pg_waldump 被信号 SIGINT ( Control + C ) 终止,则显示到终止点为止计算的统计信息摘要。Windows 不支持此操作。

  • —​save-fullpage=_save_path_

    • 将 WAL 记录中发现的全页图像保存到 save_path 目录中。保存的图像受与显示记录相同的过滤和限制条件的影响。

    • 全页图像使用以下文件名格式保存: TIMELINE-LSN.RELTABLESPACE.DATOID.RELNODE.BLKNO FORK__ 文件名由以下部分组成:

  • -?_—​help_

    • 显示有关 pg_waldump 命令行参数的帮助,然后退出。

Environment

  • PGDATA

    • 数据目录;另请参见 -p 选项。

  • PG_COLOR

    • 指定是否在诊断消息中使用颜色。可能的值为 alwaysautonever

Notes

当服务器正在运行时可能会给错误的结果。

只会显示指定的 timeline(如果没有指定 timeline,则显示默认的)。会忽略其他 timeline 中的记录。

pg_waldump 无法读取后缀为 .partial 的 WAL 文件。如果需要读取这些文件,需要从文件名中删除 .partial 后缀。

See Also