MariaDB в RedHat, CentOS и Fedora
Странно, что на Хабре я не нашла этой новости. Сегодня компания RedHat официально объявила о замене пакета MySQL на MariaDB в качестве пакета стандартной СУБД для веб-разработчиков:
А годом ранее, использовать MariaDB начал community проект Fedora. Пока использовали в качестве теста, оставляя приоритетным пакет mysql, однако в 19й версии главным будет именно пакет mariadb, а mysql будет выкладываться под названием community-mysql:
MariaDB в Википедии
Фонд Викимедия пару месяцев назад так же заявил о переходе на использование Марии в качестве бд. Пока для английской и немецкой версии википедии и ряда связанных проектов:
MariaDB в Мозилле
Три недели назад обновляли сайт поддержки мозиллы с mysql 5.1 на mariadb 5.5, правда не без косяков, но они были связаны с переходом с 5.1 на 5.5.
MySQL, MariaDB - в чем разница?
Многие из вас наверное в курсе что пять лет назад компанию MySQL купила компания Sun, а два года назад компанию Sun купила компания Oracle. Они как-то плохо её развивали, и делали всякие enterprise версии. Главный разработчик Michael Widenius (Monty) создатель MySQL, движка MyISAM и кучи всего - взял всех главных разработчиков и свалил в опенсорс. И они начали переписывать код так чтобы всё было в несколько раз быстрее и оптимизированней. Поэтому-то Фёдора с 17го релиза включала mariadb как альтернативную бд. В 19й версии они совсем заменят миску на марию. Мы с коллегами поглядели тесты, прониклись и решили попробовать уже сейчас.
Структура самих баз полностью идентична (читай совместима) - разные только сами программы. Подробнее можете почитать на офицальном сайте - https://mariadb.org. Мария должна (как и грядущая mysql 5.6) совсем не снижать производительности при большой нагрузке.
Для Fedora (и в будущем redhat и centos) система установки через yum очень простая - просто останавливаете Apache и Mysql, удаляете миску (php_mysql тоже удаляется по зависимостям), и ставите марию (и снова php_mysql).
Для фёдоры она есть в официальном репозитории начиная с 17й версии: http://mirror.yandex.ru/fedora/linux/updates/17/i386/, есть также и "родные" сборки для неё
http://mirror.timeweb.ru/mariadb/mariadb-5.5.31/yum/fedora17-x86/rpms/
https://downloads.mariadb.org/mariadb/repositories/ - собственно у них для всего есть свои сборки.
Новшества
- https://kb.askmonty.org/en/user-statistics/ - модуль сбора статистики от Google - уже встроен в Марию, теперь ничего не нужно патчить. =)
- Thread pool in MariaDB 5.5 - AskMonty KnowledgeBase - умное управление потоками в Марии. Кстати thread_pool появится и в MySQL только в версии 5.6, его там преподносят как мегафичу см. http://dev.mysql.com/tech-resources/articles/mysql-thread-pool.html с очень красивыми графиками.
Совместимость и быстродействие
- MariaDB versus MySQL - Compatibility - AskMonty KnowledgeBase
- MariaDB-5.3 optimizer benchmark « The MariaDB Blog
- Benchmark « The MariaDB Blog
Интересные факты
Создатель этих СУБД (Monty) называл их так в честь своих детей. MySQL - он так назвал в честь дочери My, MariaDB - в честь соответственно Maria и ещё он сделал движок MaxDB назвав соответственно в честь сына. Компания Oracle название mysql оставило себе, так что проект пришлось переименовать. Вместо MyISAM (который тоже в честь My) - он сделал новый движок Aria - который вроде будет очень быстрый. Сначала назвал Maria - но потом подумал что будет много путанницы. В общем объявил конкурс на название и победило Aria
Вот уже пару недель как наш сервер использует MariaDB 5.5.31 в качестве основной СУБД. Да, да, и этот блог тоже =). (Кстати мы используем фёдору и центос на наших серверах). Полёт отличный. По грубым прикидкам скорость исполнения "медленных" запросов возрасла в 5-10 раз, быстрых запросов в 7-9 раз. Я уже предварительно договорилась с крупным хостинг-провайдером, чтобы они сообщили о результатах внедрения.