Dobrý den, řeknu vám o obnovení a obnovení delta na pgbackrest.
Normální příkaz obnovy se vrátí k datové cestě, kterou jste zadali. Na druhou stranu Restore –delta obnoví datovou cestu, kterou jste poskytli, od nuly v jiné domácnosti.
Všechny operace musí být provedeny s uživatelem postgres.
cat /etc/pgbackrest.conf pgbackrest info pgbackrest archive-get --stanza=testdb
Po provedení kontrol před spuštěním bychom měli získat název –stanza z pgbackrest.conf.
Navíc před provedením zálohování-obnovení lze existující DB zálohovat jako dumpall.
pg_dump testdb -f backup.sql pg_dumpall -f backup_all.sql
Lze jej použít pro kontrolu po obnovení vytvořením tabulky.
I když složku DATA nelze zcela zazálohovat, soubory jako postgres.conf a pg_hba MUSÍ být zálohovány.
mv /postgres/data /postgres/data_old mkdir /postgres/data pg_ctl stop -D /postgres/data pgbackrest --stanza=testdb-int --log-level-console=info --type=time "--target=2021-07-07 08:00:00.024378+01" --db-path=/postgres/data2/ restore
Obsah pg_hba.conf je po obnovení aktualizován.
mv /postgres/data/pg_hba.conf /postgres/data/pg_hba_07072021.conf cp /postgres/data_07072021/pg_hba.conf /postgres/data/pg_hba.conf pg_ctl start -D /postgres/data pg_ctl reload -D /postgres/data Test..
Vracíme databázi na jinou cestu
pgbackrest --stanza=testdb --log-level-console=info --type=time "--target=2021-07-07 08:00:00.024378+01" --db-path=/postgres/data2 restore --delta
Přes postgresql.conf měníme port. Prostřednictvím nové instance vytváříme výpisy na základě tabulky.
pg_dump -d testdb -p 5432 -n public test -f backup_all.sql
Nezapomeňme smazat databázi, kterou jsme později vytvořili.