Відповіді:
ALTER USER myuser WITH SUPERUSER;
Більше можна прочитати в Документації
SELECT rolname, rolsuper FROM pg_roles;
to @masterweily
\du
щоб перелічити всіх користувачів / ролей.
Щоб розширити вищезазначене та зробити короткий довідник:
ALTER USER username WITH SUPERUSER;
ALTER USER username WITH NOSUPERUSER;
ALTER USER username CREATEDB;
Ви також можете використовувати CREATEROLE
та CREATEUSER
дозволити користувачеві привілеї, не роблячи їх суперпользователями.
Запустіть цю команду
alter user myuser with superuser;
Якщо ви хочете побачити дозвіл користувача, виконайте наступну команду
\du
Можливо, інколи модернізація до суперпользователя може бути не надто корисним варіантом. Тож крім суперкористувача існує багато інших варіантів, якими ви можете скористатися. Відкрийте свій термінал і введіть наступне:
$ 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
Також перелік списку варіантів
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'
Так у командному рядку це буде виглядати
postgres=# ALTER USER my_user WITH LOGIN
АБО використовуйте зашифрований пароль.
postgres=# ALTER USER my_user WITH ENCRYPTED PASSWORD '5d41402abc4b2a76b9719d911017c592';
АБО відкликати дозволи через певний час.
postgres=# ALTER USER my_user WITH VALID UNTIL '2019-12-29 19:09:00';
Ви можете створити SUPERUSER
або просувати USER
, відповідно до вашого випадку
$ sudo -u postgres psql -c "ALTER USER myuser WITH SUPERUSER;"
або відкат
$ sudo -u postgres psql -c "ALTER USER myuser WITH NOSUPERUSER;"
Щоб уникнути реєстрації команди під час встановлення пароля, вставіть перед нею пробіл, але переконайтеся, що ваша система підтримує цю опцію.
$ 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