Hola, les contaré sobre restaurar y restaurar delta en pgbackrest.
El comando de restauración normal vuelve a la ruta de datos que especificó. Restore –delta, por otro lado, restaura la ruta de datos que proporcionó desde cero en una casa diferente.
Todas las operaciones deben realizarse con el usuario de postgres.
cat /etc/pgbackrest.conf pgbackrest info pgbackrest archive-get --stanza=testdb
Después de realizar las comprobaciones previas a la ejecución, deberíamos obtener el nombre de la estrofa de pgbackrest.conf.
Además, antes de la restauración de la copia de seguridad que hicimos, la base de datos existente se puede respaldar como dumpall.
pg_dump testdb -f backup.sql pg_dumpall -f backup_all.sql
Se puede utilizar para el control posterior a la restauración mediante la creación de una tabla.
Incluso si no se puede realizar una copia de seguridad completa de la carpeta DATA, se DEBE realizar una copia de seguridad de archivos como postgres.conf y pg_hba.
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
El contenido de pg_hba.conf se actualiza después de la restauració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..
Estamos devolviendo la base de datos en una ruta diferente
pgbackrest --stanza=testdb --log-level-console=info --type=time "--target=2021-07-07 08:00:00.024378+01" --db-path=/postgres/data2 restore --delta
Estamos cambiando el puerto a través de postgresql.conf. Generamos volcados en una tabla a través de la nueva instancia.
pg_dump -d testdb -p 5432 -n public test -f backup_all.sql
No olvidemos eliminar la base de datos que creamos más tarde.