我想管理存档到远程位置的副本。为此,我想删除我复制的所有档案,除非备用文件是必需的。
因此,为了运行pg_archivecleanup $ARCLOC $CHECKPOINT,我需要找到可以删除的最近的检查点。我不看最近的.backup文件,因为它对我的存档容量来说太老了。我想看的是来自replay_location的pg_stat_replication \replay_lsn(取决于版本)。
但是,我不知道如何将replay_location值转换为检查点值。也就是从7/2DBCED18到000000020000000700000029。
答案:
功能是:pg_xlogfile_name
发布于 2022-09-26 08:17:02
您可以使用pg_controldata获取最新检查点的重做wal文件。和pg_archivecleanup在此之前删除wals。
pg_controldata -D $PGDATA
g_control version number: 1002
Catalog version number: 201707211
Database system identifier: 6672741145817362070
Database cluster state: in archive recovery
pg_control last modified: Mon 26 Sep 2022 09:53:49 AM CEST
Latest checkpoint location: 35D3/CEE95008
Prior checkpoint location: 35D3/CEE95008
Latest checkpoint's REDO location: 35D2/A93FBD20
Latest checkpoint's REDO WAL file: 000000AE000035D2000000A9
pg_archivecleanup pg_wal/ 000000AE000035D2000000A9https://dba.stackexchange.com/questions/211065
复制相似问题