Essayer de faire une sauvegarde incrémentielle toutes les heures d'un seul serveur Postgres (Win7 64).
J'ai la configuration suivante dans postgresql.conf:
max_wal_senders = 2
wal_level = archive
archive_mode = on
archive_command = 'copy "%p" "c:\\postgres\\foo\\%f"'
(redémarrer)
J'ai fait une sauvegarde de base avec pg_basebackup -U postgres -D ..\foo -F t -x
Ce qui a fait un gros base.tarfichier dans le foodossier et ajouté quelques fichiers 16,384 KB, qui je suppose sont des WAL.
Ce que je ne comprends pas, c'est pourquoi les WAL foone changent pas . Les WAL en data/pg_xlogmutation. Pg n'est pas censé les copier? Comment décide-t-il de le faire?
Peut-être que je dois régler archive_timeout=3600?
J'ai vu plusieurs sites (listes de diffusion de pg, page postgres de bacula) qui disent que vous devez appeler pg_start_backup () et pg_stop_backup (), mais je pense que ceux-ci ne sont pas requis. Est-ce vrai?
Questions secondaires:
À quelle fréquence les WAL
data/pg_xlogsont-ils écrits? Qu'est-ce qui déclenche une écriture?Il semble mettre à jour un WAL si je fais du DML puis
\qen psql. Ou modifiez un tableau dans pgAdmin puis fermez la fenêtre. J'ai pensé qu'il écrirait sur commit.Les meilleures pratiques? pg_basebackup une fois par semaine? Archiver les WAL sur la même machine que PG ou une machine distante?