PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Das Verschieben einer Datenbank mit pg_dump und psql -U postgres db_name <... führt zu ERROR:relation table_name does not exist

Wechseln Sie zur selben Version von PostgreSQL? Es können Probleme auftreten, wenn Sie mit pg_dump 8.3 einen Dump erstellen und versuchen, ihn in Postgresql 8.4 wiederherzustellen. Wie auch immer, unter der Annahme, dass es sich um dieselbe Version handelt, versuchen Sie Folgendes:

Sichern Sie alle globalen Objekte wie Benutzer und Gruppen (weiß nicht, ob sie in Ihrem Speicherauszug gefehlt haben):

pg_dumpall -g -U postgres > globals.sql

Dump-Schema der Datenbank:

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

Inhalt der Datenbank ausgeben:

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

Jetzt wiederherstellen.

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

Das sind meine 0,02 $. Hoffe es hilft.