kingbase清理归档文件sys_archivecleanup

sys_archivecleanup—清理 KingbaseES WAL 归档文件。

sys_archivecleanup 可供备节点服务器通过 archive_cleanup_command 来清理 WAL 文件归档。

sys_archivecleanup 也可以作为一个单独的程序运行,清理 WAL 文件归档。

在备节点服务器上使用 sys_archivecleanup,需在 kingbase.conf 配置文件中配置以下内容:

archive_cleanup_command = 'sys_archivecleanup archivelocation %r'

其中 archivelocation 是要移除的 WAL 段文件的目录。当被用在 archive_cleanup_command 时,所有逻辑上

在 %r 参数值之前的 WAL 文件都将从 archivelocation 中被移除。这样保留了最少的文件,同时仍具备崩溃后重启

的能力。

对于这台特定的备节点服务器,如果 archivelocation 是用作一个保存瞬时状态的区域,那使用这个参数就是

合适的,但是当 archivelocation 要用作一个长期的 WAL 归档区域或者当多个备节点服务器正在从这个归档位置

恢复时,使用这个参数就不合适。

当被用作一个单独的程序时,所有逻辑上早于 oldestkeptwalfile 的 WAL 文件都将从 archivelocation

中 被 移 除。 在 这 种 模 式 中, 如 果 指 定 了.partial 或 者.backup 文 件 名, 则 只 有 该 文 件 前 缀 将 被 用 作

oldestkeptwalfile。

这种对.backup 文件名的处理,可以在不出错的情况下移除在特定基础备份之前归档的 WAL 文件。例如,下面

的例子将移除所有早于 WAL 文件 000000010000003700000010 的文件:

sys_archivecleanup -d archive 000000010000003700000010.00000020.backup

sys_archivecleanup: keep WAL file "archive/000000010000003700000010" and later

sys_archivecleanup: removing file "archive/00000001000000370000000F"

sys_archivecleanup: removing file "archive/00000001000000370000000E"

1.1 命令行参数

sys_archivecleanup [option...] archivelocation oldestkeptwalfile

1、2 参数说明

sys_archivecleanup 接受下列命令行参数:

-d

在 stderr 上打印很多调试日志输出。

-n

在 stdout 上打印将被移除的文件的名字(执行一次演习)。

-V --version

打印 sys_archivecleanup 版本并退出。

-x extension

提供一个文件名后缀,在决定文件是否应该被删除之前,从文件名中剥离这个后缀。这通常有助于清理被

压缩后增加了一个文件名后缀的归档文件。例如:-x .gz。

-? --help

显示 sys_archivecleanup 命令行参数的帮助并退出。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容