MySQL позволяет создавать несколько учетных записей пользователей и предоставлять соответствующие привилегии, чтобы пользователи могли подключаться к базам данных и управлять ими.
Если учетная запись пользователя больше не нужна, рекомендуется либо удалить права пользователя, либо полностью удалить учетную запись пользователя.
В этом руководстве объясняется, как удалить учетные записи пользователей MySQL / MariaDB.
Содержание
Заявление DROP USER
В MySQL вы можете удалить одного или нескольких пользователей и назначить им права с помощью оператора DROP USER
. Общий синтаксис этого оператора следующий:
DROP USER [IF EXISTS] USER_ACCOUNT [, USER_ACCOUNT] ...
Например, чтобы удалить учетную запись пользователя brian@localhost
войдите в оболочку MYSQL и запустите:
DROP USER 'brian@localhost';
В случае успеха команда вернет:
Query OK, 0 rows affected (0.00 sec)
Чтобы удалить несколько учетных записей пользователей с помощью одной команды, запустите оператор DROP USER
а затем укажите пользователей, которых вы хотите удалить, через пробел:
DROP USER 'brian@localhost' 'any@localhost';
Если вы попытаетесь удалить учетную запись пользователя, которая не существует, а предложение IF EXISTS
не используется, команда вернет ошибку.
Если пользователь, которого вы пытаетесь удалить, в настоящее время вошел в систему, сеанс пользователя не будет закрыт, и пользователь сможет выполнять запросы до его завершения. После закрытия сеанса пользователь удаляется, и он больше не сможет войти на сервер MySQL.
Созданные пользователем базы данных и объекты не удаляются автоматически.
Удаление учетных записей пользователей MySQL
В этом разделе приведены пошаговые инструкции о том, как составить список и удалить учетные записи пользователей MySQL.
Сначала войдите в оболочку MySQL от имени пользователя root или другого администратора. Для этого введите следующую команду:
sudo mysql
Если вы используете старый собственный плагин аутентификации MySQL для входа в систему как root, выполните приведенную ниже команду и введите пароль при появлении запроса:
mysql -u root -p
Приведенные ниже команды выполняются внутри оболочки MySQL.
MySQL хранит информацию о пользователях в таблице user
в базе данных mysql
. Используйте следующий SELECT
чтобы получить список всех учетных записей пользователей MySQL :
SELECT User, Host FROM mysql.user;
Результат должен выглядеть примерно так:
+------------------+-----------+
| user | host |
+------------------+-----------+
| root | localhost |
| luke | % |
| jabba | localhost |
| jabba | 10.10.8.8 |
| chewbacca | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)
jabba@localhost
и [email protected]
— разные учетные записи пользователей.Допустим, chewbacca@localhost
запись пользователя chewbacca@localhost
больше не нужна, и мы хотим ее удалить.
Чтобы удалить пользователя, выполните:
DROP USER 'chewbacca'@'localhost'
Query OK, 0 rows affected (0.00 sec)
Команда удалит учетную запись пользователя и ее привилегии.
Теперь, когда пользователь удален, вы также можете удалить базы данных, связанные с этим пользователем.
Выводы
Чтобы удалить учетную запись пользователя MySQL, используйте оператор DROP USER
за которым следует имя пользователя, которого вы хотите удалить.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Спасибо. Реально самый адекватный пост в сети. А то понапишут, сами не понимают что.