Управление пользователями
Удаление пользователей командой SQL DROP USER
Чтобы удалить пользователя PostgreSQL, суперпользователь может ввести команду DROP USER в любом клиенте. Чаще всего для этого применяется клиент psql.
Синтаксис команды DROP USER:
DROP USER пользователь
Параметр пользователь определяет имя пользователя, удаляемого из системы. В листинге 10.9 клиент psql подключается к PostgreSQL с именем пользователя manager и удаляет пользователя salesuser.
Листинг 10.9. Удаление пользователя командой DROP USER.
[jworsley@booktown – ]$ psql – U manager template! Welcome to psql .the PostgreSQL interactive terminal. Type: \copyright for distribution terms \h for help with SQL commands \? for help on internal slash commands \g or terminate with semicolon to execute query \q to quit tempiatel=# DROP USER salesuser: DROP USER
Сообщение DROP USER, выданное сервером, означает, что пользователь был успешно удален из системы. Также возможны сообщения об ошибках.
- ERROR: DROPUSER: permission denied. Команда удаления введена пользователем, не обладающим правом удаления других пользователей. Только суперпользователь может удалять других пользователей.
- ERROR: DROP USER: user "salesuser" does not exist. Пользователь с указанным именем не существует.
Удаление пользователей при помощи сценария dropuser
Сценарий dropuser имеет много общего со сценарием createuser. Он поддерживает те же параметры подключения, что позволяет запускать его как в локальном, так и в удаленном режиме. Единственным обязательным аргументом является имя пользователя, удаляемого из системы.
Синтаксис командной строки приложения dropuser:
dropuser [ параметры ] [ пользователь ]
Ключи, входящие в строку параметров, были описаны в пункте "Создание пользователей при помощи сценария createuser" подраздела "Создание пользователей" этого раздела. В листинге 10.10 приложение dropuser выполняет ту же операцию, которая выполнялась командой SQL из листинга 10.9, – пользователь manager удаляет из системы пользователя salesuser.
Листинг 10.10. Удаление пользователя приложением dropuser.
[jworsley@booktown – ]$ dropuser – U manager salesuser DROP USER
Приложение dropuser выводит те же сообщения, что и команда SQL DROP USER. Если при выполнении сценария dropuser в командной строке отсутствует имя удаляемого пользователя, оно запрашивается в интерактивном режиме.