sql >> Databasteknik >  >> RDS >> PostgreSQL

Att flytta en databas med pg_dump och psql -U postgres db_name <... resulterar i FEL:relation tabellnamn existerar inte

Går du över till samma version av PostgreSQL? Det kan uppstå problem om du gör en dump med pg_dump 8.3 och försöker återställa den i Postgresql 8.4. Hur som helst, förutsatt att det är samma version, försök följande:

Dumpa alla globala objekt, som användare och grupper (vet inte om de saknades i din dump):

pg_dumpall -g -U postgres > globals.sql

Dumpschema för databasen:

pg_dump -Fp -s -v -f db-schema.sql -U postgres dbname

Dumpa innehållet i databasen:

pg_dump -Fc -v -f full.dump -U postgres dbname

Återställ nu.

psql -f globals.sql
psql -f db-schema.sql dbname
pg_restore -a -d dbname -Fc full.dump

Det är min $0,02. Hoppas det hjälper.



  1. Hur kan jag räkna och gruppera kolumner separat med MySQL?

  2. Välj den senaste noden för varje definierad taxonomiterm i Drupal 6

  3. Hitta en primär nyckelbegränsning i farten i SQL Server 2005

  4. Använda dataskyddad med ett Azure Key Vault från Linux