DBAtlas · Атлас эксплуатации баз данных

Настроить политику хранения pgBackRest и выполнить expire

PostgreSQLБэкап и PITR

Команда

# /etc/pgbackrest/pgbackrest.conf [global] - count based:
repo1-retention-full-type=count
repo1-retention-full=2
repo1-retention-diff=6
# Time-based alternative (at least a 14-day PITR window):
# repo1-retention-full-type=time
# repo1-retention-full=14

# Expire runs automatically after each backup; to trigger it manually:
sudo -u postgres pgbackrest --stanza=<stanza> --log-level-console=info expire

Что делает

Определяет, сколько полных/дифференциальных бэкапов (count) или за сколько дней полных бэкапов (time) хранить; expire удаляет бэкапы вне политики, зависящие от них бэкапы diff/incr и более не нужный архив WAL.

Когда использовать

Чтобы контролировать размер репозитория и гарантировать требуемое окно RPO/PITR (например, возможность вернуться на 14 дней назад).

Внимание

Окно PITR ограничено самым старым сохранённым полным бэкапом; при еженедельных full и retention-full=2 можно вернуться назад максимум примерно на 2 недели. repo1-retention-archive по умолчанию следует хранению full; если задать меньшее значение, старые бэкапы будут пригодны только до точки согласованности. Expire нельзя отменить.

Открыть в DBAtlas →

Связанные материалы