sql >> Database teknologi >  >> RDS >> PostgreSQL

pg_dump vs pg_dumpall? hvilken skal man bruge til database backup?

Den sædvanlige proces er:

  • pg_dumpall --globals-only for at få brugere/roller/etc
  • pg_dump -Fc for hver database at få et flot komprimeret dump, der er egnet til brug med pg_restore .

Ja, den slags stinker. Jeg vil rigtig gerne undervise i pg_dump for at indlejre pg_dumpall output til -Fc dumper, men lige nu ved den desværre ikke hvordan, så du skal selv gøre det.

Indtil PostgreSQL 11 var der også en grim advarsel med denne tilgang:Hverken pg_dump , heller ikke pg_dumpall i --globals-only tilstand ville dumpe brugeradgang GRANT s på DATABASE s. Så du var stort set nødt til at udtrække dem fra katalogerne eller filtrere en pg_dumpall . Dette er rettet i PostgreSQL 11; se udgivelsesbemærkningerne .

Du bør også kende til fysiske sikkerhedskopier - pg_basebackup , PgBarman og WAL arkivering, PITR osv. Disse tilbyder meget "finere kornet" genopretning, helt ned til minuttet eller individuelle transaktioner. Ulempen er, at de fylder mere, kun kan gendannes til den samme PostgreSQL-version på den samme platform og sikkerhedskopiere alle tabeller i alle databaser uden mulighed for at udelukke noget.




  1. Udfyldning af en datatabel i C# ved hjælp af MySQL

  2. mysql forskel i indeksbrug mellem MyISAM og InnoDB

  3. Skal jeg bruge forberedte udsagn til MySQL i PHP PERFORMANCE-WISE?

  4. Fejl i mysql bigint variabel erklæring inde i brugerdefineret nextval funktion