Incremental Backup (pg_basebackup --incremental)

PostgreSQL 🔴 Senior

Définition

Depuis PostgreSQL 17 (26 septembre 2024), pg_basebackup accepte l'option --incremental pour ne sauvegarder que les blocs modifies depuis une sauvegarde de référence, grâce a des fichiers de résume WAL (summarize_wal). pg_combinebackup reconstitue ensuite une sauvegarde complète a partir de la chaîne incrementale.

Analogie

Comme ne photocopier que les pages modifiées d'un classeur plutôt que tout le classeur a chaque sauvegarde.

Exemple de code

# Sauvegarde complete de reference
pg_basebackup -D /backup/full -Ft -X none

# Sauvegarde incrementale basee sur le manifest precedent
pg_basebackup -D /backup/incr1 \
  --incremental=/backup/full/backup_manifest

# Reconstitution complete
pg_combinebackup /backup/full /backup/incr1 -o /backup/restored

Cas d'usage

Réduire le temps et l'espace disque des sauvegardes quotidiennes sur une base volumineuse a faible taux de modification.

Anti-pattern

Activer --incremental sans avoir configure summarize_wal en amont : aucun fichier de résume n'existe pour calculer le delta.
#sgbd#interview#database#postgresql#pg17

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre