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

Hvordan bekræfter man, at et arkiv produceret af pg_dump archive er OK og gyldigt?

Det ser ud til, at du forsøger at bekræfte gyldigheden og rigtigheden af ​​en PostgreSQL-dump, du lige har lavet.

Din vigtigste misforståelse er, at du ikke behøver at gendanne dumpet til den samme database, som du oprettede det fra . Du kan gendanne til en anden database på samme klynge, eller for ekstra paranoia en database på en anden klynge (server). Bekræft, at dumpet blev gendannet uden fejl, og at dataene er, som du forventer, at de skal være.

For ekstra paranoia skal du stoppe PostgreSQL-serveren og kopiere filerne i datamappen. På den måde har du også en sikkerhedskopi på filniveau. Bemærk, at kopier på filniveau af PostgreSQL-datamapper kun kan læses af den samme større (8.1/8.2/...) version af PostgreSQL bygget med den samme mulighed på den samme platform - så hvis datafilen er fra 9.2.x på Windows x64, kan den kun læses af en anden Windows x64-vært med 9.2.x installeret.

Hvis du er bekymret for din originale database, har du sandsynligvis ikke sikkerhedskopier. Dette er en kritisk problem. Du skal hurtigst muligt læse dokumentationskapitlet om sikkerhedskopiering og gendannelse og få en god automatiseret backup-ordning på plads. Tag et kig på barmand .

Opdatering efter redigering af spørgsmål :

-F t er et mærkeligt valg; almindelige SQL-dumps eller -F c giver normalt mere mening.

Filen du har lavet er ikke en .gz (gzip-komprimeret) fil, alligevel er det en .tar arkiv, ikke komprimeret. Det kan udtrækkes til en mappe fuld af SQL-filer.

For at teste det, brug pg_restore for at gendanne den til en ny tom database oprettet med createdb eller CREATE DATABASE kommando.




  1. Sæt automatisk nøglegenerering i dvale med MySQL og Oracle

  2. Betinget bestilling af

  3. SQLAlchemy - Få en liste over tabeller

  4. Opret forbindelse til en ekstern MySQL-database via Python