О MariaDB
MariaDB - это реляционная СУБД с открытым исходным кодом, форк MySQL. Она совместима с подавляющим большинством приложений, написанных для MySQL (WordPress, Nextcloud, Laravel, Django, Matomo и многих других), а работать с ней можно на стандартном SQL.
При выдаче сервера пакет mariadb-server устанавливается из репозиториев вашего дистрибутива (Debian 12, Debian 13, Ubuntu 20.04, 22.04 или 24.04). Служба mariadb включена и запущена, поэтому после перезагрузки поднимется сама. Точная версия зависит от выбранного дистрибутива.
По умолчанию MariaDB слушает только 127.0.0.1:3306. Наружу в интернет ничего не открыто: это хорошая отправная точка для приложений, которые работают на том же VPS. Подключаться под локальным root нужно командой sudo mariadb.
Что можно делать с MariaDB
Установка из официальных репозиториев
Пакет берётся из репозиториев дистрибутива, поэтому обновления безопасности приходят через
apt, как и для остальной системы.Служба с автозапуском при загрузке
Служба
mariadbзапускается командойsystemctl enable --now. Она работает сразу после выдачи сервера и стартует после каждой перезагрузки VPS.Доступ только с localhost
Порт 3306 доступен лишь с самого сервера (127.0.0.1). База не видна снаружи, пока вы сами не решите иначе.
Клиент в командной строке
Команда
sudo mariadbоткрывает SQL-сессию под локальным root, без пароля, который нужно искать. Из неё удобно создавать базы и пользователей.Совместимость с MySQL
Распространённые коннекторы и инструменты MySQL работают с MariaDB. Перенос существующего приложения обычно требует минимальных правок.
Транзакционный движок InnoDB
ACID-транзакции, внешние ключи и блокировки на уровне строк подходят для веб-приложений, API и внутренних сервисов с большим количеством записей.
Начало работы с MariaDB
От заказа до запуска за несколько минут.
- 1
Закажите VPS с MariaDB
Выберите Linux VPS в Париже или Франкфурте, укажите Debian или Ubuntu и отметьте MariaDB на вкладке «Приложения» в форме заказа.
- 2
Подключитесь к выданному серверу
Когда VPS будет выдан, зайдите по SSH с полученными данными доступа и откройте клиент MariaDB под локальным root. Та же команда указана в сообщении по завершении установки.
Bashssh USER@SERVER_IP sudo mariadb - 3
Создайте базу и пользователя
Не используйте root в приложениях. Создайте отдельную базу и пользователя с правами только на неё, задав длинный уникальный пароль.
Bashsudo mariadb -e "CREATE DATABASE app_db CHARACTER SET utf8mb4; CREATE USER 'app_user'@'localhost' IDENTIFIED BY 'STRONG_PASSWORD'; GRANT ALL PRIVILEGES ON app_db.* TO 'app_user'@'localhost'; FLUSH PRIVILEGES;" - 4
Подготовьте сервер к продакшену
Запустите мастер усиления безопасности (на Ubuntu 20.04 он называется mysql_secure_installation), держите порт 3306 закрытым в файрволе и настройте регулярные резервные копии. Если нужен удалённый доступ, используйте SSH-туннель.
Bashsudo mariadb-secure-installation sudo mariadb-dump --all-databases > backup.sql
Сценарии использования MariaDB
База для сайта или CMS
Установите WordPress, Nextcloud или приложение на Laravel на тот же VPS и укажите
localhostв качестве хоста базы. База остаётся закрытой, открытых портов нет.Бэкенд для API и приложений
Разместите базу приложения на Node.js, Python или PHP с таблицами, индексами и транзакциями на сервере, которым вы полностью управляете.
Среда разработки и тестирования
Воспроизведите продакшен-базу, чтобы проверить миграцию схемы или обновление версии, не трогая реальные данные.
Хранение бизнес-данных
Соберите в SQL-базе данные для отчётов, учёта заказов или внутренних инструментов и регулярно выгружайте их через
mariadb-dump.
Частые вопросы о MariaDB
Нет. Согласно рецепту установки, MariaDB слушает только 127.0.0.1:3306. Достучаться до неё могут лишь приложения на самом сервере и ваша SSH-сессия. Для доступа с компьютера используйте SSH-туннель.
Подробнее о MariaDB
Оставить доступ локальным или открыть его
Если приложение работает на том же VPS, ничего не меняйте: прослушивание 127.0.0.1 - самая безопасная настройка. Чтобы администрировать базу со своего компьютера (DBeaver, HeidiSQL, консольный клиент), лучше использовать SSH-туннель, а не публичный порт:
ssh -L 3306:127.0.0.1:3306 USER@SERVER_IP
После этого подключайтесь к 127.0.0.1:3306 на своей машине. Если всё же нужно принимать удалённые соединения, измените параметр bind-address сервера, создайте пользователей, привязанных к конкретному IP, и разрешите порт 3306 в файрволе только для этого адреса.
Резервное копирование
Для большинства небольших баз достаточно логического дампа. В старых версиях (Ubuntu 20.04) команда называется mysqldump.
sudo mariadb-dump --single-transaction --all-databases | gzip > /root/backup-$(date +%F).sql.gz
Запускайте её по расписанию через cron и копируйте архив за пределы сервера. Копия на том же диске не спасёт при отказе VPS. Регулярно проверяйте, что восстановление из неё действительно работает.
Настройка под объём RAM
Параметры по умолчанию консервативны. Если VPS предназначен только для базы, важнее всего innodb_buffer_pool_size: он определяет, сколько данных хранится в памяти. Обычная отправная точка - от 50 до 70 % RAM. Затем понаблюдайте за потреблением памяти, прежде чем увеличивать значение. Другие руководства смотрите в разделе /learn.