Le processus habituel est :
pg_dumpall --globals-onlypour obtenir des utilisateurs/rôles/etcpg_dump -Fcpour chaque base de données pour obtenir un joli vidage compressé utilisable avecpg_restore.
Oui, ce genre de merde. J'aimerais vraiment enseigner pg_dump pour intégrer pg_dumpall sortie en -Fc dumps, mais pour le moment, malheureusement, il ne sait pas comment vous devez le faire vous-même.
Jusqu'à PostgreSQL 11, il y avait aussi une mauvaise mise en garde avec cette approche :Ni pg_dump , ni pg_dumpall dans --globals-only le mode viderait l'accès utilisateur GRANT s sur DATABASE s. Il fallait donc à peu près les extraire des catalogues ou filtrer un pg_dumpall . Ceci est corrigé dans PostgreSQL 11; voir les notes de version
.
Vous devez également connaître les sauvegardes physiques - pg_basebackup , Archivage PgBarman et WAL, PITR, etc. Ceux-ci offrent une récupération beaucoup plus "fine", jusqu'à la minute ou à la transaction individuelle. L'inconvénient est qu'ils occupent plus d'espace, ne peuvent être restaurés que dans la même version de PostgreSQL sur la même plate-forme et sauvegardent toutes les tables de toutes les bases de données sans possibilité d'exclure quoi que ce soit.