关键字:
KingbaseES、sys_waldump、wal、人大金仓
wal日志
wal日志循环复用原理
wal日志文件一直是滚动更新的,旧文件不断的在删除、新文件不断地增加,当checkpoint之后,旧的wal文件就无用了。
sys_waldump解析工具
sys_waldump是什么
wal日志为二进制文件,sys_waldump工具是将数据库集群的wal日志翻译为人为可以阅读的信息,主要用于展示和debug。此工具本身是无法解析实际操作的数据,只会告知wal日志中日志的写入方式和数据类型。
sys_waldump参数介绍
使用方法:
安装数据库bin目录下./sys_waldump [选项]... [STARTSEG [ENDSEG]]
选项:
-b, --bkp-details 输出有关备份块的详细信息
--block-size=SIZE 以 kB 为单位设置表块大小 [8]
-e, --end=RECPTR 在指定的WAL位置停止读取
-f, --follow 在到达WAL结束后继续重试
-n, --limit=N 要显示的记录数
-p, --path=PATH 查找日志段文件的path目录或带有/sys_wal的目录,包含这些文件
(默认:当前目录,./sys_wal, $KINGBASE_DATA/sys_wal)
-r, --rmgr=RMGR 只显示由RMGR资源管理器生成的记录
使用--rmgr=list列出有效的资源管理器名称
-s, --start=RECPTR 在WAL中位于RECPTR处开始阅读
-t, --timeline=TLI 要从哪个时间线读取日志记录
(默认值:1或者是使用STARTSEG中的值)
-V, --version 输出版本信息, 然后退出
-x, --xid=XID 只显示用给定事务ID标记的记录
-z, --stats[=record] 显示统计信息而不是记录
(或者,显示每个记录的统计信息)
-k, --key-path=PATH 要在其中获取 WAL 密钥的文件
-d, --display-enc 显示每个 WAL 的加密状态
-?, --help 显示此帮助, 然后退出
sys_waldump参数使用
(1) -b, --bkp-details 输出有关备份块的详细信息
./sys_waldump {wal日志目录}/00000001000000010000006F -b 。使用waldump工具使用-b参数解析对应record类型时,输出有关备份块blkref的详细信息
(2) -e, --end=RECPTR 在指定的WAL位置停止读取;
-s, --start=RECPTR 在WAL中位于RECPTR处开始阅读
./sys_waldump {wal日志目录}/00000001000000010000006F --start=1/6F2CE918 --end=1/6F2CEB10
(3)-f, --follow 在到达WAL结束后继续重试,动态更新wal日志
(4) -n, --limit=N 要显示的记录数
(5) -r, --rmgr=RMGR 只显示由RMGR资源管理器生成的记录
./sys_waldump --r=list 展示wal中所有的资源管理名称
(6) -V, --version 输出版本信息, 然后退出
./sys_waldump -V 查看版本号
(7) -x, --xid=XID 只显示用给定事务ID标记的记录
(8) -z, --stats[=record] 显示统计信息而不是记录
./sys_waldump {wal日志目录}/00000001000000010000006F -z 按rmgr输出统计信息
(9) -d, --display-enc 显示每个 WAL 的加密状态
参考资料
《KingbaseES客户端应用参考手册-》 13. sys_waldump