Справочник

Как установить MariaDB на Ubuntu

MariaDB ставится из пакетов Ubuntu одной командой и сразу запускается. Администратор входит командой sudo mariadb без пароля, а сайту заводят отдельного пользователя с паролем. Сайты на PHP работают с MariaDB так же, как с MySQL.

≈ 6 мин чтения
Содержание 10

Что сделать прямо сейчас

Команды на этой странице вводятся на сервере: подключитесь к нему по SSH (как подключиться) и набирайте их в том же окне.

  1. Обновите список пакетов: sudo apt update.
  2. Установите MariaDB: sudo apt install mariadb-server. Если система спросит пароль, введите пароль своего пользователя на сервере. Символы при вводе не видны — так и должно быть: наберите пароль и нажмите Enter. На вопрос Do you want to continue? [Y/n] нажмите Y и Enter.
  3. Проверьте, что база работает: sudo systemctl status mariadb. В ответе должно быть active (running). Выйти из ответа — клавиша Q.
  4. Войдите в базу: sudo mariadb. Строка ввода сменится на MariaDB [(none)]>.
  5. Создайте базу и пользователя для сайта — команды ниже.
  6. Выйдите командой exit.

Какая версия поставится

UbuntuВерсия MariaDBПакет
24.04MariaDB 10.11mariadb-server 10.11.13
26.04MariaDB 11.8mariadb-server 11.8.6

Номера версий взяты со страниц пакетов Ubuntu на 14 октября 2026 года: с обновлениями они растут. Какая Ubuntu стоит у вас — как узнать. Версию самой MariaDB покажет команда mariadb --version.

В Ubuntu 24.04 MariaDB лежит в разделе universe. По документации Ubuntu программы из этого раздела не получают официальной поддержки, кроме исправлений безопасности через Ubuntu Pro. В Ubuntu 26.04 MariaDB перенесена в основной раздел main.

MariaDB или MySQL

MariaDB выросла из MySQL: те же порт 3306, команды SQL и модуль PHP php-mysql. WordPress и другие сайты на PHP работают с любой из них. Ставьте на сервер что-то одно: обе базы занимают порт 3306 и папку настроек /etc/mysql/. Если нужен именно MySQL — Как установить MySQL на Ubuntu.

В MariaDB работают обе команды входа: mariadb и mysql — обе запускают клиент MariaDB. Поэтому команды из инструкций для MySQL подходят и здесь.

Как войти в MariaDB

sudo mariadb

Пароль базы не нужен: в Ubuntu пользователь root в MariaDB входит через unix_socket. База проверяет не пароль, а то, что команда запущена через sudo. Подробнее и почему root не стоит переводить на вход по паролю — в разборе ошибки 1698.

Каждая команда заканчивается точкой с запятой. Выйти обратно — exit.

База и пользователь для сайта

Сайту sudo недоступен, поэтому ему нужен свой пользователь с паролем. Войдите через sudo mariadb и выполните три команды. Вместо base подставьте имя базы, вместо ivan — имя пользователя, вместо новый-пароль — свой пароль:

CREATE DATABASE base CHARACTER SET utf8mb4;
CREATE USER 'ivan'@'localhost' IDENTIFIED BY 'новый-пароль';
GRANT ALL PRIVILEGES ON base.* TO 'ivan'@'localhost';

localhost значит, что пользователь подключается с самого сервера — так и нужно, когда сайт и база на одном VPS.

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

mariadb -u ivan -p base

MariaDB спросит пароль — введите тот, что задали в CREATE USER. Строка MariaDB [base]> значит, что вход работает. Эти имя базы, пользователя и пароль впишите в настройки сайта, адрес базы — localhost.

Где настройки и журнал

ЧтоГде
все файлы настроек/etc/mysql/
настройки сервера, в том числе bind-address/etc/mysql/mariadb.conf.d/50-server.cnf
журнал службыsudo journalctl -u mariadb

После правки настроек перезапустите базу: sudo systemctl restart mariadb. Если служба не поднялась, причина будет в журнале: sudo journalctl -u mariadb.

Подключения с другого компьютера

В Ubuntu 24.04 в файле 50-server.cnf из пакета стоит строка bind-address = 127.0.0.1: база принимает подключения только с самого сервера. Для сайта на том же VPS этого достаточно. Как подключиться к базе со своего компьютера через SSH-туннель, не открывая порт, — Порт 3306.

Не открывайте порт 3306 для всех командой sudo ufw allow 3306: подбирать пароли к базе сможет кто угодно.

Ошибки и как их исправить

ОтветЧто случилось
ERROR 1698 (28000): Access denied for user 'root'@'localhost'вход root без sudo
ERROR 1045 (28000): Access deniedневерный пароль или имя пользователя
ERROR 2002база не запущена или не тот сокет
ERROR 2003нет подключения по сети
Unable to locate package mariadb-serverapt не нашёл пакет

Все разборы — в разделе Ошибки MySQL и MariaDB.

Источники

Сверено 14 октября 2026 года.

Что почитать дальше