В чем разница между MariaDB и MySQL?


82

В чем разница между MariaDB и MySQL? Я не очень знаком с обоими. Я в основном разработчик внешнего вида по большей части.

Они синтаксически похожи? Где эти два языка запросов различаются?

В Википедии упоминается только разница между лицензированием:

MariaDB - это разрабатываемая сообществом ветвь базы данных MySQL, стимулом которой является поддержание сообществом его бесплатного статуса под лицензией GPL, в отличие от любой неопределенности статуса лицензии MySQL при ее текущем владении Oracle.


Это может быть полезно: hackr.io/blog/mariadb-vs-mysql
Hooda

Ответы:


95

MariaDB - это бинарная замена MySQL с обратной совместимостью . Что это значит:

  • Файлы данных и файлов определений таблиц (.frm) являются двоично-совместимыми.
  • Все клиентские API, протоколы и структуры идентичны.
  • Все имена файлов, двоичные файлы, пути, порты, сокеты и т. Д. Должны быть одинаковыми.
  • Все коннекторы MySQL работают без изменений с MariaDB.
  • Пакет mysql-client также работает с сервером MariaDB.

В большинстве распространенных практических сценариев MariaDB версии 5.xy будет работать точно так же, как MySQL 5.xy, MariaDB следует версии MySQL, то есть ее номер версии используется для указания того, с какой версией MySQL она совместима.

MariaDB возникла как форк MySQL от Майкла «Монти» Видениуса, одного из первых разработчиков MySQL и соучредителя MySQL Ab. Фонд MariaDB действует в качестве хранителя MariaDB.

Основной мотивацией для MariaDB было предоставление версии MySQL для флоссов на тот случай, если Oracle станет корпоративной компанией с MySQL. Стоит отметить, что Монти высказывался против приобретения MySQL (через приобретение Sun) Oracle.

Хотя MariaDB должна быть совместима с MySQL, по тем или иным причинам существует довольно много проблем совместимости и различных функций :

  • MariaDB включает в себя все популярные движки с открытым исходным кодом,
  • MariaDB требует несколько улучшений скорости по сравнению с MySQL, и
  • Есть несколько новых расширений Floss, которых не хватает MySQL

    Наконец, имя происходит от дочери Монти, Марии (другой - My), поскольку MySQL теперь является зарегистрированным товарным знаком корпорации Oracle.


1
Спасибо за очень полное объяснение. Именно то, что я искал.
Chrisjlee

5
MariaDB явно не SQL-99 полный, как отказано на той самой странице, на которую ссылается этот ответ. Например, он вообще не поддерживает утверждения, а CTE еще не превратили его в стабильный выпуск. История почти такая же для MySQL.
эфир

Я считаю, что ссылки на montyprogram dot com сгнили, но я понятия не имею, где можно найти эквиваленты этих ссылок в Интернете.
Хей

MariaDB поддерживает InnoDB, верно? почему так написано?
Полсон Питер

1
@PaulsonPeter Да, MariaDB поддерживает InnoDB. Не уверен, о чем ваш второй вопрос.
Яннис

15

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

Насколько я понимаю, MariaDB поддерживается и совершенствуется первоначальными разработчиками MySQL, а MySQL поддерживается и совершенствуется Oracle. Это зависит от того, кем вы хотите заниматься этой работой.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.