Ich muss den Besitzer der PostgreSql-Datenbank ändern.
Wie ändere ich den Besitzer der PostgreSql-Datenbank in phppgadmin?
postgresql
Jayashri
quelle
quelle
ERROR: must be member of role ...
= ARBEITET NICHT MIT RDSDie Antwort von Frank Heikens aktualisiert nur den Datenbankbesitz. Oft möchten Sie auch den Besitz von enthaltenen Objekten (einschließlich Tabellen) aktualisieren. Ab Postgres 8.2 steht REASSIGN OWNED zur Verfügung, um diese Aufgabe zu vereinfachen.
WICHTIGE BEARBEITUNG!
Verwenden Sie diese Option niemals,
REASSIGN OWNED
wenn die ursprüngliche Rolle verwendet wirdpostgres
. Dies kann Ihre gesamte DB-Instanz beschädigen. Der Befehl aktualisiert alle Objekte mit einem neuen Eigentümer, einschließlich der Systemressourcen (postgres0, postgres1 usw.).Stellen Sie zunächst eine Verbindung zur Admin-Datenbank her und aktualisieren Sie den DB-Besitz:
Dies ist ein globales Äquivalent zu dem
ALTER DATABASE
in Franks Antwort angegebenen Befehl. Anstatt jedoch eine bestimmte Datenbank zu aktualisieren, wird der Besitz aller DBs geändert, deren Eigentümer 'old_name' ist.Der nächste Schritt besteht darin, den Besitz der Tabellen für jede Datenbank zu aktualisieren:
Dies muss für jede Datenbank durchgeführt werden, die 'old_name' gehört. Der Befehl aktualisiert den Besitz aller Tabellen in der Datenbank.
quelle
postgres
selbst ist ... Das hat er auf die harte Tour gelernt.REASSIGN OWNED
(normalerweise, weil Ihr Eigentümer es istpostgres
) finden Sie in den Snippets unter stackoverflow.com/a/2686185/1839209 .