MariaDB — это система управления реляционными базами данных с открытым исходным кодом. Первоначально она была разработана как обратно-совместимая двоичная замена MySQL.
MariaDB разрабатывается и поддерживается первоначальными разработчиками MySQL и сообществом открытого исходного кода.
В этой статье объясняется, как установить и защитить MariaDB в Ubuntu 20.04.
Мы предполагаем, что у вас есть административный доступ к серверу Ubuntu, либо от имени пользователя root, либо от имени пользователя с разрешениями sudo.
На момент написания этой статьи последней версией MariaDB, доступной в репозиториях Ubuntu, была версия 10.3. Для его установки выполните следующие команды:
sudo apt update sudo apt install mariadb-server
После завершения установки сервис MariaDB запустится автоматически. Чтобы убедиться, что сервер базы данных работает, введите:
sudo systemctl status mariadb
Выходные данные должны показать, что служба включена и работает:
...
В комплект поставки сервера MariaDB входит скрипт mysql_secure_installation, который позволяет легко повысить безопасность сервера базы данных.
Выполните скрипт без аргументов:
sudo mysql_secure_installation
Скрипт предложит вам ввести пароль root:
Enter current password for root (enter for none):
Поскольку вы еще не установили пароль root, просто нажмите «Enter» здесь.
В следующем приглашении вам будет предложено установить пароль для пользователя root MySQL:
Set root password? [Y/n] n
Тип n. В Ubuntu плагин auth_socket по умолчанию аутентифицирует пользователя MariaDB с помощью плагина. Этот плагин работает, проверяя, соответствует ли пользователь локальной системы, вызывающий клиентскую программу, указанному имени пользователя MariaDB.
Далее вам будет предложено удалить анонимного пользователя, ограничить доступ root-пользователя к локальному компьютеру, удалить тестовую базу данных и перезагрузить таблицы привилегий. Вы должны ответить Y на все вопросы:
Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Для взаимодействия с сервером MariaDB из командной строки используйте утилиту клиента mysql или ее псевдоним mariadb. Этот инструмент устанавливается как зависимость от пакета сервера MariaDB.
Плагин auth_socket проверяет подлинность пользователей, которые подключаются из localhost через файл сокета Unix. Это означает, что вы не можете аутентифицироваться как root, предоставляя пароль.
Для входа на сервер MariaDB от имени пользователя root введите:
sudo mysql
Вам будет представлена оболочка MariaDB, как показано ниже:
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 61 Server version: 10.3.22-MariaDB-1ubuntu1 Ubuntu 20.04 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> Bye
Если вы хотите войти на сервер MariaDB с правами root с помощью внешней программы, такой как phpMyAdmin, у вас есть два варианта.
Первый — изменить метод аутентификации с auth_socket на mysql_native_password. Вы можете сделать это, выполнив следующую команду:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_password';FLUSH PRIVILEGES;
Второй рекомендуемый вариант — создать нового выделенного административного пользователя с доступом ко всем базам данных:
GRANT ALL PRIVILEGES ON *.* TO 'administrator'@'localhost' IDENTIFIED BY 'very_strong_password';
Вы можете назвать администратора как угодно, но убедитесь, что вы используете надежный пароль.
Мы показали вам, как установить MariaDB на Ubuntu 20.04. Теперь, когда сервер баз данных запущен и работает, следующим шагом может стать изучение управления учетными записями пользователей и базами данных MariaDB.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.