Site icon OS CONFIG

Работа с базами данных и пользователями в MySQL и MariaDB

Краткая инструкция по созданию и удалению баз данных и пользователей в системе управления базами данных MySQL и MariaDB из консоли.

В первую очередь входим в консоль mysql под суперпользователем root

# mysql -u root -p

Работа с базами данных

Просмотреть список баз данных в системе или на сервере можно командой

SHOW DATABASES;

Для создания базы данных с именем new_db нужно воспользоваться командой

CREATE DATABASE new_db;

Чтобы удалить базу данных new_db, вводим команду

DROP DATABASE new_db;

Проверяем

SHOW DATABASES;

и база данных new_db в списке должна отстуствовать.

Работа с пользователями

Создать пользователя БД можно командой

CREATE USER 'dbuser'@'*' IDENTIFIED BY 'password';

Изменить пароль существующему пользователю можно с помощью команды:

SET PASSWORD FOR 'dbuser'@'*' = PASSWORD('yourNewPassword');

Чтобы задать права пользователю dbuser на базу данных new_db, необходимо воспользоваться командой

GRANT ALL PRIVILEGES ON new_db.* TO 'dbuser'@'*';
FLUSH PRIVILEGES;

Теперь для того, чтобы подключиться с учётной записью пользователя dbuser, необходимо выйти из консоли mysql

EXIT;

и войти в неё уже пользователем dbuser

# mysql -u dbuser -p

Чтобы задать пользователю определённые права, их необходимо прописать через запятую вместо ALL. В СУБД MySQL и MariaDB существуют следующие права:

Например:

GRANT SELECT, INSERT, UPDATE ON new_db.* TO 'dbuser'@'*';
FLUSH PRIVILEGES;

Чтобы создать пользователя с неограниченными правами (аналогично суперпользователя root), команду необходимо привести к следующему виду:

GRANT ALL PRIVILEGES ON *.* to 'dbuser'@'*';
FLUSH PRIVILEGES;

Чтобы отозвать права у пользователя, например, лишить его всех прав на базу данных new_db, необходимо запустить такую команду

REVOKE ALL PRIVILEGES ON new_db.* FROM 'dbuser'@'*';
FLUSH PRIVILEGES;

Чтобы просмотреть права пользователя, необходимо запустить команду

SHOW GRANTS FOR 'dbuser'@'*';

Удалить пользователя полностью можно командой

DROP USER 'dbuser'@'*';

Этот пользователь полностью исчезнет из всех баз данных, к которым он был привязан.

Exit mobile version