Antworten:
ALTER USER myuser WITH SUPERUSER;
Weitere Informationen finden Sie in der Dokumentation
SELECT rolname, rolsuper FROM pg_roles;
zu @masterweily
\du
alle Benutzer / Rollen auflisten .
Um das oben Gesagte zu erweitern und eine Kurzreferenz zu erstellen:
ALTER USER username WITH SUPERUSER;
ALTER USER username WITH NOSUPERUSER;
ALTER USER username CREATEDB;
Sie können Benutzerberechtigungen auch verwenden CREATEROLE
und CREATEUSER
zulassen, ohne sie zu einem Superuser zu machen.
$ su - postgres
$ psql
$, \du;
um den Benutzer auf db zu sehen,
wählen Sie den Benutzer aus, der Superuser sein soll, und:
$ ALTER USER "user" with superuser;
ALTER USER "user" WITH SUPERUSER;
Führen Sie diesen Befehl aus
alter user myuser with superuser;
Wenn Sie die Berechtigung für einen Benutzer anzeigen möchten, führen Sie den folgenden Befehl aus
\du
Manchmal ist ein Upgrade auf einen Superuser möglicherweise keine gute Option. Abgesehen von Superusern gibt es also viele andere Optionen, die Sie verwenden können. Öffnen Sie Ihr Terminal und geben Sie Folgendes ein:
$ sudo su - postgres
[sudo] password for user: (type your password here)
$ psql
postgres@user:~$ psql
psql (10.5 (Ubuntu 10.5-1.pgdg18.04+1))
Type "help" for help.
postgres=# ALTER USER my_user WITH option
Listen Sie auch die Liste der Optionen auf
SUPERUSER | NOSUPERUSER | CREATEDB | NOCREATEDB | CREATEROLE | NOCREATEROLE |
CREATEUSER | NOCREATEUSER | INHERIT | NOINHERIT | LOGIN | NOLOGIN | REPLICATION|
NOREPLICATION | BYPASSRLS | NOBYPASSRLS | CONNECTION LIMIT connlimit |
[ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password' | VALID UNTIL 'timestamp'
In der Kommandozeile sieht es also so aus
postgres=# ALTER USER my_user WITH LOGIN
ODER verwenden Sie ein verschlüsseltes Passwort.
postgres=# ALTER USER my_user WITH ENCRYPTED PASSWORD '5d41402abc4b2a76b9719d911017c592';
ODER widerrufen Sie Berechtigungen nach einer bestimmten Zeit.
postgres=# ALTER USER my_user WITH VALID UNTIL '2019-12-29 19:09:00';
Sie können eine erstellen SUPERUSER
oder fördern USER
, also für Ihren Fall
$ sudo -u postgres psql -c "ALTER USER myuser WITH SUPERUSER;"
oder Rollback
$ sudo -u postgres psql -c "ALTER USER myuser WITH NOSUPERUSER;"
Fügen Sie ein Leerzeichen davor ein, um zu verhindern, dass ein Befehl beim Festlegen des Kennworts protokolliert wird. Überprüfen Sie jedoch, ob Ihr System diese Option unterstützt.
$ sudo -u postgres psql -c "CREATE USER my_user WITH PASSWORD 'my_pass';"
$ sudo -u postgres psql -c "CREATE USER my_user WITH SUPERUSER PASSWORD 'my_pass';"
ALTER USER myuser WITH NOSUPERUSER