3.2 Incremental과 pg_combinebackup
PostgreSQL 17부터 pg_basebackup --incremental과 pg_combinebackup을 이용한 incremental physical backup이 제공됩니다. Incremental backup은 바로 시작할 수 있는 data directory가 아니며 이전 chain과 결합해야 합니다.
먼저 server에서 block change summary가 쌓이도록 summarize_wal을 활성화합니다. 기준 full backup의 manifest를 지정해 incremental backup을 만듭니다.
pg_basebackup --pgdata=/backup/full --checkpoint=fast
pg_basebackup \
--incremental=/backup/full/backup_manifest \
--pgdata=/backup/incr-01
복구 가능한 full image는 pg_combinebackup으로 만듭니다.
pg_combinebackup \
/backup/full \
/backup/incr-01 \
--output=/restore/combined
Chain 관리
- 모든 parent manifest와 backup을 보존합니다.
- Chain 길이가 restore time과 failure probability에 미치는 영향을 측정합니다.
- Combine 결과의 manifest를 검증합니다.
- Version별 binary compatibility를 확인합니다.
Incremental은 backup 전송량을 줄일 수 있지만 WAL archive를 대체하지 않습니다. PITR에는 base image 이후 목표 시점까지 연속된 WAL이 필요합니다.