Установка MariaDB в Ubuntu 20.04

    Команда Simple-Server
    03.06.2026
    7 мин

    Материал подготовлен командой Simple-Server для администраторов VPS и выделенных серверов. Команды и пути проверяйте на тестовой машине перед production.

    Этап 1. Инсталлируем MariaDB

    Репозитории регулярно обновляют, в них размещают стабильные версии утилит. Дистрибутивы же включают устаревшие релизы, актуальные на момент сборки, поэтому их необходимо обновлять, чтобы избежать несовместимости. Выполняется процедура командой:

    Теперь можно устанавливать нужный нам пакет:

    sudo apt install mariadb-server

    Инсталляция проходит без запроса пароля, без внесения иных изменений в конфигурацию. В таком виде использовать MariaDB на сервере нежелательно, потому что она будет работать в небезопасном режиме. Чтобы исправить ситуацию применим скрипт mysql_secure_installation, поставляемый в комплекте с программным обеспечением. Он блокирует доступ к серверу, исключит учетки.

    Скрипт безопасности изменяет незащищенные опции, устанавливаемые по умолчанию. Например, создаются тестовые аккаунты, возможность удаленного подключения под учеткой root. Это потенциально создает опасность взлома, несанкционированного доступа к информации, хранящейся в созданной базе данных.

    Запуск скрипта следующей командой:

    sudo mysql_secure_installation

    Она запускает цепочку открытия диалогов, позволяющих изменить параметры безопасности БД. Первый запрос относится к аккаунту root, система запросит пароль для активной базы данных. Если он еще не настроен, достаточно нажать Enter. Это укажет, что защита пока отсутствует.

    NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user.  If you've just installed MariaDB, and you haven't set the root password yet, the password will be blank, so you should just press enter here. Enter current password for root (enter for none):

    Следующий диалог предлагает ввести пароль пользователя root в MariaDB. Это стоит сделать сразу, если используется метод аутентификации, отличный от unix socket, иначе любой желающий сможет зайти в систему с пустым или вообще любым паролем. Поэтому отвечаем на запрос Y (Yes) и нажимаем Enter.

    . . . OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation. Set root password? [Y/n] Y

    Теперь взаимодействие с MariaDB будет возможно только после ввода правильного пароля. Завершим настройку – на все последующие вопросы можно ответить утвердительно нажатием клавиши Y (Yes) и подтверждением кнопкой Enter.

    Система самостоятельно удалит тестовую БД, анонимные учетки, отключит доступ через аккаунт root, загрузит обновленные правила. Установка и настройка пакета MariaDB завершена, можно приступать к эксплуатации. Или пройти необязательный этап по созданию администратора для активации доступа по паролю.

    Этап 3. Создадим аккаунт с администраторскими правами

    По умолчанию в Ubuntu**** установка MariaDB осуществляется при помощи плагина unix_socket, поэтому запрос пароля не применяется. В большинстве случаев такой подход дает высокий уровень безопасности. Но одновременно усложняет администрирование, например, через phpMyAdmin. При старте-остановке сервера, управлении журналами используется учетка root.

    Именно поэтому мы не стали менять ее данные. Но при обновлении пакета они могут измениться «самостоятельно», поэтому лучше сразу включить работу по паролю. В качестве примера создадим учетку с названием admin и зададим ей те же права, что и у root. Сначала откройте командную строку MariaDB:

    И уже в ней создайте нового пользователя:

    GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

    Вместо admin и password задайте любые предпочитаемые комбинации. Так, имя часто задают «нестандартное», чтобы усложнить взлом путем подбора пароля. После создания аккаунта сделаем очистку привилегий с сохранением настроек в текущем сеансе.

    Теперь можно закрывать оболочку:

    Остается провести**** тестирование MariaDB, чтобы убедиться в корректности настроек.

    При инсталляции системы СУБД из официального репозитория устанавливает настройки, чтобы модуль MariaDB запускался автоматом. Но все равно лучше вручную проверить его статус:

    sudo systemctl status mariadb

    Вывод на экран будет выглядеть так:

    Если утилита не запущена, это нужно сделать вручную, заодно следует запустить службу:

    sudo systemctl enable mariadb sudo systemctl start mariadb

    После принудительного запуска можно сделать пробное подключение к базе данных при помощи mysqladmin. Эта утилита позволяет обращаться к БД с правами администратора, запускать команды и изменять настройки. Приведем пример подключения с выводом номера версии:

    Вывод на экран будет выглядеть так:

    mysqladmin  Ver 9.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu on x86_64 Copyright (c) 2000, 2019, Oracle, MariaDB Corporation Ab and others. Server version        10.3.22-MariaDB-1ubuntu1 Protocol version    10 Connection        Localhost via UNIX socket UNIX socket        /var/run/mysqld/mysqld.sock Uptime:            5 min 39 sec Threads: 7  Questions: 467  Slow queries: 0  Opens: 177  Flush tables: 1  Open tables: 31  Queries per second avg: 1.615

    Если был настроен доступ при помощи пароля администратора, подойдет команда:

    mysqladmin -u admin -p version

    Вывод текущей версии подтверждает, что база данных запущена и функционирует, а пользователь имеет доступ к ее содержимому.


    Нужен сервер для практики? Арендуйте VPS/VDS в России — root-доступ, NVMe, DDoS-защита и поддержка 24/7.

    VPS для проекта

    VPS с root-доступом, NVMe и поддержкой 24/7 на Simple-Server.

    StarterVDS

    490

    в месяц

    1 ядро

    1 ГБ RAM

    20 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Безлимитный трафик
    Заказать VPS
    Рекомендуем

    PerformanceVDS

    1190

    в месяц

    2 ядра

    4 ГБ RAM

    60 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Базовая DDoS-защита
    Заказать VPS

    Нужна другая конфигурация или чистый VPS без панели?

    Все тарифы VPS

    Похожие статьи, которые могут быть вам интересны