DBAtlas · Veritabanı operasyon atlası

pgBackRest ile son yedekten tam restore yap

PostgreSQLYedekleme & PITR

Komut

# PostgreSQL kapalı ve PGDATA boş olmalı (aksi halde --delta kullan)
sudo systemctl stop postgresql-16
sudo -u postgres pgbackrest --stanza=<stanza> --log-level-console=info restore
# Belirli bir yedekten: --set=<backup_label>
# Test amaçlı başka bir sunucuya restore'da arşivi kapat:
# sudo -u postgres pgbackrest --stanza=<stanza> --archive-mode=off restore
sudo systemctl start postgresql-16

Ne yapar?

En son yedeği geri yükler, recovery.signal ve restore_command'ı yazar; PostgreSQL açılırken arşivdeki tüm WAL'ı uygulayıp en güncel tutarlı noktaya getirir ve yeni bir timeline ile promote olur.

Ne zaman kullanılır?

Primary'nin veri dizini kaybolduğunda/bozulduğunda veya yedeklerin geri yüklenebilirliğini düzenli test ederken.

Dikkat

Restore edilen küme ile eski küme aynı anda aynı stanza'ya arşiv gönderirse depo bozulur; test restore'larında --archive-mode=off kullan. Patroni altındaysa önce kümeyi pause'a al veya Patroni'yi durdur, aksi halde Patroni araya girer. Tablespace'ler ve postgresql.conf dışı yollar varsa --tablespace-map ve link seçeneklerini gözden geçir.

DBAtlas'ta aç →

İlgili