sql >> Databáze >  >> RDS >> PostgreSQL

pg_dump vs pg_dumpall? který použít k zálohování databáze?

Obvyklý postup je:

  • pg_dumpall --globals-only získat uživatele/role/atd
  • pg_dump -Fc pro každou databázi získáte pěkný komprimovaný výpis vhodný pro použití s ​​pg_restore .

Ano, tento druh je na hovno. Opravdu bych rád učil pg_dump pro vložení pg_dumpall výstup do -Fc vysype, ale právě teď bohužel neví jak, takže to musíte udělat sami.

Až do PostgreSQL 11 existovalo s tímto přístupem také ošklivé upozornění:Ani pg_dump , ani pg_dumpall v --globals-only režim by vypsal přístup uživatele GRANT s na DATABASE s. Takže jste je v podstatě museli extrahovat z katalogů nebo filtrovat pg_dumpall . Toto je opraveno v PostgreSQL 11; viz poznámky k vydání .

Měli byste také vědět o fyzických zálohách - pg_basebackup , PgBarman a archivace WAL, PITR, atd. Tyto nabízejí mnohem "jemnější" obnovu, až do minuty nebo jednotlivé transakce. Nevýhodou je, že zabírají více místa, lze je obnovit pouze na stejnou verzi PostgreSQL na stejné platformě a zálohují všechny tabulky ve všech databázích bez možnosti cokoliv vyloučit.




  1. Zámek a transakce v postgresu, které by měly zablokovat dotaz

  2. Jak nainstalovat a nakonfigurovat phpMyAdmin na CentOS 6

  3. mysql replikace - slave server na jedné databázi

  4. Více vložek s CHOP