pgBackRest ile full, differential ve incremental yedek al
PostgreSQLYedekleme & PITRKomut
sudo -u postgres pgbackrest --stanza=<stanza> --type=full backup
sudo -u postgres pgbackrest --stanza=<stanza> --type=diff backup # son full'dan beri değişenler
sudo -u postgres pgbackrest --stanza=<stanza> --type=incr backup # son herhangi bir yedekten beri değişenler
# cron örneği (postgres kullanıcısı): Pazar full, diğer günler diff
# 30 1 * * 0 pgbackrest --stanza=<stanza> --type=full backup
# 30 1 * * 1-6 pgbackrest --stanza=<stanza> --type=diff backupNe yapar?
Full yedek tüm kümeyi, diff son full'dan, incr son herhangi bir yedekten bu yana değişen dosyaları kopyalar; yedek sonunda gerekli WAL'ın arşivlendiği doğrulanır ve retention'a göre expire otomatik çalışır.
Ne zaman kullanılır?
Düzenli yedekleme planında: genellikle haftalık full + günlük diff/incr, büyük kümelerde daha sık incr.
Dikkat
Önce full yoksa diff/incr istekleri otomatik olarak full'a dönüşür. Incr zinciri uzadıkça restore süresi ve bağımlılık artar; zincirdeki tek bir yedeğin kaybı sonrakileri kullanılamaz kılar. Yükü primary'den almak için backup-standby=y ile yedeği standby'dan al (primary yine bağlantı için gereklidir).
İlgili
- pgBackRest için WAL arşivlemeyi yapılandır (archive-push/archive-get)
- pgBackRest stanza oluştur ve arşivlemeyi doğrula (stanza-create/check)
- pgBackRest yedek kataloğunu ve WAL arşiv aralığını gör (info)
- pgBackRest ile son yedekten tam restore yap
- pgBackRest ile belirli bir zamana geri dön (PITR, --type=time)
- pgBackRest delta restore ile standby'ı hızlıca yeniden kur