Necesito cambiar el propietario de la base de datos PostgreSql.
¿Cómo cambiar el propietario de la base de datos PostgreSql en phppgadmin?
postgresql
Jayashri
fuente
fuente
ERROR: must be member of role ...
= NO FUNCIONA CON RDSLa respuesta de Frank Heikens solo actualizará la propiedad de la base de datos. A menudo, también desea actualizar la propiedad de los objetos contenidos (incluidas las tablas). Comenzando con Postgres 8.2, REASSIGN OWNED está disponible para simplificar esta tarea.
¡EDICIÓN IMPORTANTE!
Nunca use
REASSIGN OWNED
cuando el rol original espostgres
, esto podría dañar toda su instancia de base de datos. El comando actualizará todos los objetos con un nuevo propietario, incluidos los recursos del sistema (postgres0, postgres1, etc.)Primero, conéctese a la base de datos de administración y actualice la propiedad de la base de datos:
Este es un equivalente global del
ALTER DATABASE
comando proporcionado en la respuesta de Frank, pero en lugar de actualizar un DB en particular, cambia la propiedad de todos los DB propiedad de 'old_name'.El siguiente paso es actualizar la propiedad de las tablas para cada base de datos:
Esto debe realizarse en cada base de datos propiedad de 'old_name'. El comando actualizará la propiedad de todas las tablas en la base de datos.
fuente
postgres
él mismo ... Aprendí eso por las malas.REASSIGN OWNED
(generalmente porque su propietario espostgres
), consulte los fragmentos en stackoverflow.com/a/2686185/1839209 .