Список пользователей в PostgreSQL

В данной статье будет показано как посмотреть список пользователей в PostgreSQL. Это популярная свободная объектно-реляционная СУБД. Разработана сообществом PostgreSQL. СУБД широко применяется в различных сферах — от простых веб-сайтов до интернет-магазинов и государственных сайтов.

Имеет богатую функциональность, включающую в себя различные встроенные функции, поддержку многомерных массивов, геометрических данных. Также поддерживает JSON и наследование.

Содержание статьи:

Список пользователей PostgreSQL

Вывести список всех пользователей, присутствующих в СУБД PostgreSQL можно двумя способами — при помощи встроенной команды в оболочке psql — du и при помощи SQL запроса. Далее будут рассмотрены оба способа.

Вывод списка пользователей при помощи команды du

Для использования данного метода необходимо перейти в оболочку psql. psql — это терминальный клиент для работы с PostgreSQL. Позволяет выполнять различные запросы к базе данных. Также в psql присутствуют так называемые метакоманды одной из которых как раз является команда du. Для входа в оболочку psql необходимо выполнить следующую команду в терминале:

sudo -u postgres psql

39buJw6KpWNsAAAAABJRU5ErkJggg==

После ввода пароля пользователя, приглашение к вводу примет следующий вид:

postgres=#

Это означает что оболочка запущена от пользователя postgres. Данный пользователь присутствует в системе по умолчанию и имеет максимальные привилегии.

Для вывода списка всех пользователей присутствующих в PostgreSQL необходимо выполнить команду:

du

AygSyL6MC83xAAAAAElFTkSuQmCC

Команда du выводит список пользователей (в терминологии postgres вместо слово пользователь используется слово роль) а также два дополнительных столбца — список атрибутов роли и членство роли если таковы имеются. Для выхода из команды необходимо нажать на клавишу q.

Вывод списка пользователей при помощи SQL запроса

Также вывести список пользователей можно при помощи SQL запроса. Для этого необходимо ввести следующий запрос в psql:

SELECT usename, usesuper, usecreatedb FROM pg_catalog.pg_user;

5v1w3Yv7UlKHJIWsTVlkrxqUwzMUjJDtZp8NeohHROwLefTL8xpj311JpgDVPz8aumK0shOPSsv25lk1v8PqVMG44RsdVsAAAAASUVORK5CYII=

Помимо вывода имена пользователей данный запрос также сообщит является ли пользователь суперпользователем (аналог пользователя root в Linux системах).

Если у пользователя есть права суперпользователя, то отображается бука t — True (права есть) в противном случае отображается бука f — False (прав нет). А также будет отображено есть ли у пользователя права на создание баз данных (t — да, f — нет).

Выводы

В данной небольшой статье было показано как вывести список пользователей PostgreSQL, присутствующих в СУБД. Существует два метода. Какой использовать зависит исключительно от ваших предпочтений. Если у вас остались вопросы задавайте их в комментариях!


Creative Commons License
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.

Оцените статью:

Загрузка…

Источник: https://losst.ru/
Материал распространяется под лицензией CC-BY-SA