# 皮克_归档清理
皮克_archivecleanup — 清理 PostgreSQL WAL 归档文件
# 概要
pg_archivecleanup
[选项
...] 档案位置
最旧的保存文件
# 描述
皮克_archivecleanup 旨在用作归档清理命令
在作为备用服务器运行时清理 WAL 文件存档(请参阅第 27.2 节)。皮克_archivecleanup 也可以用作一个独立的程序来清理 WAL 文件档案。
配置备用服务器以使用 pg_归档清理,把它放到它的postgresql.conf
配置文件:
archive_cleanup_command = 'pg_archivecleanup archivelocation %r'
在哪里*档案位置
*是应该从中删除 WAL 段文件的目录。
内使用时档案_清理_命令, 所有 WAL 文件在逻辑上位于%r
参数将被删除*档案位置
.这最大限度地减少了需要保留的文件数量,同时保留了崩溃重启功能。使用此参数是适当的,如果档案位置
是此特定备用服务器的临时暂存区,但不是当。。。的时候档案位置
*旨在作为长期 WAL 存档区域,或者当多个备用服务器从同一存档位置恢复时。
当用作独立程序时,所有逻辑上位于*最旧的保存文件
将从中删除档案位置
.在这种模式下,如果您指定一个。部分的
或者.backup
文件名,那么只有文件前缀将用作最旧的保存文件
*.这种治疗.backup
文件名允许您删除在特定基础备份之前归档的所有 WAL 文件而不会出错。例如,以下示例将删除所有早于 WAL 文件名的文件000000010000003700000010
:
pg_archivecleanup -d archive 000000010000003700000010.00000020.backup
pg_archivecleanup: keep WAL file "archive/000000010000003700000010" and later
pg_archivecleanup: removing file "archive/00000001000000370000000F"
pg_archivecleanup: removing file "archive/00000001000000370000000E"
皮克_archivecleanup 假设*档案位置
*是拥有服务器的用户可读写的目录。
# 选项
皮克_archivecleanup 接受以下命令行参数:
-d
打印大量调试日志输出标准错误
.
-n
打印将被删除的文件的名称标准输出
(执行试运行)。
-V
- 版本
打印 pg_archivecleanup 版本并退出。
-x
延期
在决定是否应该删除它们之前,提供一个将从所有文件名中删除的扩展名。这通常用于清理在存储期间已压缩的存档,因此压缩程序添加了扩展名。例如:-x .gz
.
-?
- 帮助
显示关于 pg 的帮助_archivecleanup 命令行参数,然后退出。
# 环境
环境变量PG_COLOR
指定是否在诊断消息中使用颜色。可能的值为总是
,汽车
和绝不
.
# 笔记
皮克_archivecleanup 设计为在用作独立实用程序时与 PostgreSQL 8.0 及更高版本一起使用,或者在用作存档清理命令时与 PostgreSQL 9.0 及更高版本一起使用。
皮克_archivecleanup 是用 C 编写的,有一个易于修改的源代码,有专门指定的部分可以根据您自己的需要进行修改
# 例子
在 Linux 或 Unix 系统上,您可以使用:
archive_cleanup_command = 'pg_archivecleanup -d /mnt/standby/archive %r 2>>cleanup.log'
其中存档目录物理上位于备用服务器上,因此归档命令
正在通过 NFS 访问它,但文件是备用的本地文件。这会:
产生调试输出
清理日志
从归档目录中删除不再需要的文件