Установка
1 2 |
$ sudo apt update $ sudo apt install mariadb-server |
Выполним скрипт первичной настройки
1 |
$ sudo mysql_secure_installation |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
Задать пароль пользователя root? Set root password? [Y/n] Y New password: Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! Удалить анонимных пользователей? Remove anonymous users? [Y/n] Y ... Success! Отключить удаленный доступ главного администратора? Disallow root login remotely? [Y/n] Y ... Success! Удалить тестовые базы данных? Remove test database and access to it? [Y/n] Y - Dropping test database... ... Success! - Removing privileges on test database... ... Success! Перезагрузить привилегии? Reload privilege tables now? [Y/n] y ... Success! |
Запуск MariaDB и статус
1 2 |
$ sudo systemctl start mariadb $ sudo systemctl status mariadb |
Работа с MariaDB
Войти в интерфейс командной строки MySQL
1 2 |
$ sudo mysql -u root -p MariaDB [(none)]> |
Изменить имя root-пользователя
1 |
rename user 'root'@'localhost' to 'newAdminUser'@'localhost'; |
Посмотрим таблицу пользователей
1 |
select user,host,password from mysql.user; |
Посмотрим список баз данных
1 |
show databases; |
Создать базу данных
1 |
create database testDB; |
Создать пользователя
1 |
CREATE USER 'demouser'@'localhost' IDENTIFIED BY 'password'; |
Передать правами пользователю demouser на базу testDB
1 |
GRANT SELECT,UPDATE,DELETE ON testDB.* TO 'demouser'@'localhost'; |
Уберем право на редактирование
1 |
REVOKE UPDATE ON testDB.* FROM 'demo-user'@'localhost'; |
Передать полные права на базу данных
1 |
GRANT ALL ON testDB.* TO 'demouser'@'localhost'; |
Сброс привилегий
1 |
FLUSH PRIVILEGES; |
Посмотреть текущие права пользователя
1 |
SHOW GRANTS FOR 'demouser'@'localhost'; |
Выйти из интерфейса командной строки
1 |
\q |
Сброс пароля root
Остановим сервер
1 |
$ sudo systemctl stop mariadb |
Запуск без проверки привилегий
1 |
$ sudo mysqld_safe --skip-grant-tables --skip-networking & |
Войти в интерфейс командной строки MySQL
1 |
$ sudo mysql -u root |
Сброс привилегий и изменить пароль root
1 2 |
FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; |
Если команда ALTER USER не работает
1 2 |
UPDATE mysql.user SET authentication_string = PASSWORD('new_password') WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES; |
Перезапуск сервера из режима safe-mode
1 2 |
$ sudo killall mysqld $ sudo systemctl start mariadb |