Управление пользователями MySQL или MariaDB через командную строку
- Recluse
- 16.04.2020
- 7 556
- 0
- 08.01.2024
- 8
- 8
- 0
Командная строка MySQL - основной инструмент для работы с MySQL, который присутствует в любой версии данной СУБД, под любую платформу. В этой статье мы разберем управление пользователями данной системы управления базами данных.
Авторизация через командный интерфейс MySQL
Так как MariaDB является форком MySQL, то утилита управления сервером тоже называется mysql. Для входа под суперпользователем, в терминале нужно выполнить команду и ввести его пароль:
mysql -u root
Или под любым другим пользователем, который имеет доступ к управлению пользователями:
mysql -u [ИМЯ ПОЛЬЗОВАТЕЛЯ]
Создание пользователя
Для создания пользователя понадобится выполнить одну единственную команду:
CREATE USER '[ИМЯ ПОЛЬЗОВАТЕЛЯ]'@'localhost' IDENTIFIED BY '[ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ]';
Конечно же, значения [ИМЯ ПОЛЬЗОВАТЕЛЯ] и [ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ] нужно заменить на свои.
Проверить, появился ли новый пользователь, можно с помощью команды, которая отобразит всех пользователей на данном сервере MySQL:
select host, user from mysql.user;
После выполнения данной команды, будет создан пользователь.
Выдача пользователю прав доступа
Поскольку свежесозданный пользователь не будет иметь никаких прав, то работать с базами данных он не сможет. Для работы с какой-то определенной базой, ему нужно дать на неё права.
Выдать права доступа "только для чтения" (пользователь сможет только просматривать данные, но не редактировать их) на определенную базу данных можно следующей командой:
GRANT SELECT, SHOW VIEW ON [ИМЯ БАЗЫ ДАННЫХ].* TO '[ИМЯ ПОЛЬЗОВАТЕЛЯ]'@'localhost';
Выдать полные права (пользователь сможет редактировать данные) доступа на определенную базу данных можно следующей командой:
GRANT ALL PRIVILEGES ON [ИМЯ БАЗЫ ДАННЫХ].* TO '[ИМЯ ПОЛЬЗОВАТЕЛЯ]'@'localhost';
Посмотреть права пользователя можно с помощью команды SHOW GRANTS:
SHOW GRANTS FOR '[ИМЯ ПОЛЬЗОВАТЕЛЯ]'@'localhost';
Удаление пользователя
Удаляется пользователь с помощью следующей команды:
DROP USER '[ИМЯ ПОЛЬЗОВАТЕЛЯ]'@'localhost';
Для того, чтобы убедиться, что нужный пользователь был удален, достаточно выполнить простую команду:
select host, user from mysql.user;
И посмотреть в выводе командной строки, присутствует ли пользователь, которого Вы удаляли, или нет.
Добавить комментарий