PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 19/03/2018 16:58:05

Juju
Membre

Sauvegarde à chaud - Question

Bonjour,

J'ai une question concernant la sauvegarde à chaud avec Postgres (v9.5 et plus). Une fois que la commande pg_start_backup() a été exécutée, on peut copier tous les fichiers de l'instance nécessaires à une restauration. Sachant que pendant la sauvegarde les écritures se font toujours dans la répertoire data, comment Postgres fait-il pour que les fichiers copiés soient utilisables alors que potentiellement ils peuvent être modifiés pendant la copie ? J'ai lu que pg_start_backup force des "full page writes" (activé par défaut) jusqu'à l'exécution de pg_stop_backup(), c'est grâce à cela que lors de la restauration il peut remettre les fichiers (notamment ceux des tables par exemple) comme il faut ? En réécrivant en entier les blocks à restaurer ?

Merci.
Coridalement.

Dernière modification par Juju (19/03/2018 17:00:44)

Hors ligne

#2 19/03/2018 19:22:59

rjuju
Administrateur

Re : Sauvegarde à chaud - Question

Bonjour,

Les fichiers ne sont pas utilisables ni cohérents en l'état.  Ils le deviennent en ré-appliquant les modifications apportées dans ces fichiers qui ont été tracées dans les journaux de transaction.  Cela fonctionne parce que:

- postgres écrit forcément chaque modification dans les journaux de transaction (du moins avec un wal_level compatible avec la sauvegarde PITR)
- et que ces modifications sont idempotentes


En résumé, si vous ne disposez pas de l'intégralité des journaux de transaction générés entre le start et le stop backup, la copie des fichiers est inutilisable.

Hors ligne

#3 19/03/2018 22:15:08

Juju
Membre

Re : Sauvegarde à chaud - Question

Bonjour,
Merci pour votre réponse c'est plus clair. Effectivement sans les WAL générés pendant le backup la copie ne servira pas à grand chose smile
Encore merci.
Julien.

Hors ligne

Pied de page des forums