Обичайният процес е:
pg_dumpall --globals-onlyза получаване на потребители/роли/и т.н.pg_dump -Fcза всяка база данни, за да получите хубав компресиран дъмп, подходящ за използване сpg_restore.
Да, този вид е гадно. Наистина бих искал да преподавам pg_dump за вграждане на pg_dumpall изход в -Fc изхвърля, но в момента, за съжаление, не знае как, така че трябва да го направите сами.
До PostgreSQL 11 имаше и неприятно предупреждение с този подход:Нито pg_dump , нито pg_dumpall в --globals-only режимът би изхвърлил потребителския достъп GRANT s в DATABASE с. Така че почти трябваше да ги извлечете от каталозите или да филтрирате pg_dumpall . Това е коригирано в PostgreSQL 11; вижте бележките по изданието
.
Трябва да знаете и за физическите резервни копия - pg_basebackup , PgBarman и WAL архивиране, PITR и т.н. Те предлагат много „по-подробно“ възстановяване до минута или до отделна транзакция. Недостатъкът е, че те заемат повече място, могат да се възстановят само до същата версия на PostgreSQL на същата платформа и архивират всички таблици във всички бази данни без възможност за изключване на каквото и да било.