pricing postgres cluster aws database postgresql database-backups database-restore owner

database - postgres - rds cluster



Postgresql: ¿hacer una copia de seguridad de la base de datos y restaurarla en un propietario diferente? (1)

Debería usar la --no-owner , esto detiene pg_restore intentar establecer la propiedad de los objetos para el propietario original. En cambio, los objetos serán propiedad del usuario especificado por --role

createdb -p 5433 -T template0 db_name pg_restore -p 5433 --no-owner --role=owner2 -d db_name db_name.dump

pg_restore doc

Hice una copia de seguridad en la base de datos en un servidor diferente y tiene un rol diferente al que necesito, con este comando:

pg_dump -Fc db_name -f db_name.dump

Luego copié la copia de seguridad en otro servidor donde necesito restaurar la base de datos, pero no existe ese propietario que se utilizó para esa base de datos. Digamos que la base de datos tiene el propietario owner1 , pero en un servidor diferente solo tengo el owner2 y necesito restaurar esa base de datos y cambiar el propietario.

Lo que hice en otro servidor al restaurar:

createdb -p 5433 -T template0 db_name pg_restore -p 5433 --role=owner2 -d db_name db_name.dump

Pero cuando se ejecuta la restauración, obtengo estos errores:

pg_restore: [archiver (db)] could not execute query: ERROR: role "owner1" does not exist

¿Cómo puedo especificarlo para que cambie de propietario? ¿O es imposible?