Предупреждение MySQL Workbench при подключении к MariaDB


11

При использовании MySQL Workbench 6.3 в Kubuntu 15.10 и версии сервера MariaDB: 10.0.22-MariaDB-0ubuntu0.15.10.1 (Ubuntu) я получаю следующее предупреждение.

Это ожидается?

Обнаружена несовместимая / нестандартная версия сервера или протокол соединения (10.0.22).

Соединение с этой базой данных может быть установлено, но некоторые функции MySQL Workbench могут работать неправильно, поскольку база данных не полностью совместима с поддерживаемыми версиями MySQL.

MySQL Workbench разработан и протестирован для MySQL Server версий 5.1, 5.5, 5.6 и 5.7

Успешно установлено соединение MySQL

Информация, связанная с этой связью:

Хост: localhost Порт: 0 Пользователь: serg SSL: не включен

Установлено успешное соединение MySQL с параметрами, определенными для этого соединения.


Имеет смысл, что Oracle не утруждает себя поддержкой форка, конкурирующего с их продуктом ... Но предупреждение говорит, что уже ...
Герт ван ден Берг

Было несколько запросов на предоставление возможности отключить сообщение: bugs.mysql.com/bug.php?id=83369
CrazyTim

Workbench 8.0.12 и более поздние версии имеют возможность отключить это сообщение, когда оно появляется. Хотя эта версия, похоже, работает на Gnome, она, к сожалению, приводит к краху Unity на Ubuntu ( bugs.mysql.com/bug.php?id=91967 ).
smhg

Ответы:


10

TL; DR
Да, это ожидается, потому что MySQL Workbench - это продукт Oracle, и он официально не поддерживает MariaDB, который фактически является конкурентом MySQL. Workbench предупреждает вас о потенциальных несовместимостях, не обязательно обнаруженных. В большинстве случаев это можно смело игнорировать.

Детали

База знаний статье MariaDB о совместимости MySQL описывает отношения лучше (курсив мой):

Для всех практических целей MariaDB представляет собой двоичный вариант замены той же версии MySQL (например, MySQL 5.1 -> MariaDB 5.1, MariaDB 5.2 и MariaDB 5.3 совместимы. MySQL 5.5 совместим с MariaDB 5.5, а также на практике с MariaDB 10.0) , Это означает, что:

  • Файлы данных и файлов определений таблиц (.frm) являются двоично-совместимыми.
    • См. Примечание ниже для несовместимости с представлениями!
  • Все клиентские API, протоколы и структуры идентичны. Все имена файлов, двоичные файлы, пути, порты, сокеты и т. Д. Должны быть одинаковыми.
  • Все коннекторы MySQL (PHP, Perl, Python, Java, .NET, MyODBC, Ruby, коннектор MySQL C и т. Д.) Работают без изменений с MariaDB.
    • Есть некоторые проблемы с установкой PHP5, о которых вы должны знать (ошибка в том, как старый клиент PHP5 проверяет совместимость библиотек).
  • Пакет mysql-client также работает с сервером MariaDB.
  • Общая клиентская библиотека двоично совместима с клиентской библиотекой MySQL.

Это означает, что в большинстве случаев вы можете просто удалить MySQL и установить MariaDB, и все готово. (Нет необходимости конвертировать любые файлы данных, если вы используете ту же основную версию, как 5.1). Однако вы все равно должны запустить mysql_upgrade, чтобы завершить обновление. Это необходимо для того, чтобы ваши привилегированные таблицы mysql и таблицы событий обновлялись новыми полями, которые использует MariaDB.

Мы ежемесячно выполняем слияния с базой кода MySQL, чтобы гарантировать нашу совместимость и получать все без исключения функции и исправления ошибок, добавленные Oracle.

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


Для справки, список совместимости продолжает: MySQL 5.6 <==> MariaDB 10.1, MySQL 5.7 <==> MariaDB 10.2, MySQL 8.0 <==> MariaDB 10.3. Конечно, это не точные эквиваленты, и есть некоторые совпадения, но это довольно близкое руководство.
Шерил Хохман
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.