hostprofi.ru
Подобрать хостинг
Термин

MariaDB

краткое определение

MariaDB — форк MySQL 2009 года, созданный после покупки MySQL компанией Oracle. Полностью совместима с MySQL до версии 10.3, поддерживается по умолчанию в Ubuntu, Debian и CentOS.

СУБД MariaDB создана в 2009 году как открытая альтернатива MySQL после поглощения Sun Microsystems (владельца MySQL) компанией Oracle. Многие Linux-дистрибутивы (Debian, Ubuntu, CentOS 7+) заменили MySQL на MariaDB по умолчанию. По синтаксису SQL и API MariaDB обратно совместима с MySQL до версии 10.3.

Как работает MariaDB

MariaDB использует плагинную архитектуру движков хранения (Storage Engines). Основной движок — InnoDB, обеспечивающий ACID-транзакции и построчную блокировку. Дополнительно доступны Aria (улучшенный MyISAM с crash-safe), ColumnStore (аналитика на основе колоночного хранения), Spider (распределённые таблицы через федеративные запросы).

Репликация реализована через бинарный лог (binlog): primary записывает все изменения, реплики читают и воспроизводят. Galera Cluster обеспечивает синхронную multi-primary репликацию без конфликтов записи.

Отличия MariaDB от MySQL

ХарактеристикаMariaDBMySQL
ЛицензияGPL v2 (полностью open source)GPL v2 / Oracle Commercial
Движки храненияInnoDB, Aria, ColumnStore, SpiderInnoDB (основной)
JSONВстроенные JSON-функцииJSON тип данных с 5.7
Thread poolИз коробкиТолько Enterprise
Бинарная совместимость с MySQLДо 10.3

История

MySQL создан Монти Видениусом (Michael «Monty» Widenius) в 1994 году, выпущен в 1995. Sun Microsystems купила MySQL AB в 2008 году за $1 млрд. Oracle поглотила Sun в январе 2010 года. В том же 2009 году Видениус основал компанию Monty Program AB и создал форк MariaDB — назвал СУБД в честь своей младшей дочери Марии (MySQL назван по старшей дочери «My»). MariaDB Foundation основана в 2012 году. С версии 10.4 MariaDB всё сильнее расходится с MySQL в синтаксисе и функциях.

MariaDB в хостинге

На большинстве современных VPS с Ubuntu/Debian установка через apt install mariadb-server автоматически заменяет MySQL. Для миграции существующей MySQL-базы: mysqldump → перенос → импорт в MariaDB — совместимость SQL-синтаксиса сохранена до MariaDB 10.3.

Управление через Adminer или phpMyAdmin работает с MariaDB без изменений. Панель ISPmanager поддерживает MariaDB как альтернативу MySQL с версии 5.x.

На что обращать внимание

MariaDB 10.6+ включает innodb_read_only_compressed и улучшенный Optimizer. Настройка /etc/mysql/my.cnf идентична MySQL. Ключевые параметры производительности: innodb_buffer_pool_size (60–70% доступной RAM), max_connections (в зависимости от нагрузки). Резервное копирование через mysqldump --single-transaction не блокирует таблицы при использовании InnoDB.

Оптимизация производительности

Ключевые параметры в /etc/mysql/my.cnf:

[mysqld]
innodb_buffer_pool_size = 1G        # 60-70% RAM
innodb_log_file_size = 256M
max_connections = 150
query_cache_type = 0                # отключить в MariaDB 10.1+

Индексирование: EXPLAIN SELECT ... покажет, использует ли запрос индекс. Без индекса по полю WHERE — полный скан таблицы (Full Table Scan). SHOW PROCESSLIST — активные соединения и долгие запросы.

Другие термины