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

Справочник системного администратора

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

Первым делом нам необходимо из терминала подключиться к нашему экземпляру MariaDB под root.

Выполняем в терминале команду:

mysql -u root -p

Теперь создадим первого пользователя, указав вместо username свое имя и свой пароль вместо password.

Выполним команду:

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';

В случае успешного выполнения команды вы получите ответ: Query OK.

Создадим первую базу данных, указав свое имя базы вместо databasename и желаемую кодировку (в нашем примере используется кодировка utf8_general_ci):

CREATE DATABASE databasename CHARACTER SET utf8 COLLATE utf8_general_ci;

В случае успешного выполнения команды мы так же должны получить ответ: Query OK.

Теперь предоставим созданному ранее пользователю полные права на взаимодействия с только что созданной базой данных (не забывайте так же указывать ваше имя базы вместо databasename и имя вашего пользователя вместо username):

GRANT ALL PRIVILEGES ON databasename.* TO 'username'@'localhost';

Завершающий штрих – нужно обновить все привилегии:

FLUSH PRIVILEGES;

Для просмотра привилегий выполните команду (указав имя вашего пользователя вместо username):

SHOW GRANTS FOR 'username'@'localhost';

На этом создание базы данных и пользователя для взаимодействия с ней можно считать завершенным.

Если нужно удалить пользователя, то это необходимо делать следующим образом.

Во первым, необходимо отозвать привилегии для взаимодействия с базой данный:

REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'username'@'localhost';

И лишь затем можно удалять пользователя:

DROP USER 'username'@'localhost';

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

DROP DATABASE databasename;

Если нужно экспортировать базу данных в файл, из терминала выполняем команду:

mysql -u root -p databasename > database.sql

Если нужно сделать импорт базы, то выполняем:

mysql -u root -p databasename < database.sql

Tags: