sql >> Base de Datos >  >> RDS >> PostgreSQL

Mover una base de datos con pg_dump y psql -U postgres db_name <... da como resultado ERROR:la relación table_name no existe

¿Se está mudando a la misma versión de PostgreSQL? Puede haber problemas si realiza un volcado con pg_dump 8.3 e intenta restaurarlo en Postgresql 8.4. De todos modos, asumiendo que es la misma versión, intente lo siguiente:

Vuelca todos los objetos globales, como usuarios y grupos (no sé si faltaban en tu volcado):

pg_dumpall -g -U postgres > globals.sql

Volcar el esquema de la base de datos:

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

Volcar el contenido de la base de datos:

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

Ahora restaurar.

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

Esos son mis $0.02. Espero que ayude.