В какой мере MariaDB Java-клиент является идеальной заменой для MySQL JDBC (Connector /J)?

Помещение . Я отправляю приложение Java, которое будет подключать JDBC к базе данных MySQL. (На момент написания это могло быть 5.1 или 5.5, но, надеюсь, вопрос и ответ не сильно зависят от версии.)

Наблюдение . Ясно, что я могу использовать драйвер JDBC MySQL ( Connector /J ) или драйвер MariaDB JDBC ( Java-клиент MariaDB ), чтобы установить соединение с сервером MySQL. Одно огромное преимущество с точки зрения ISV заключается в том, что драйвер MariaDB лицензируется LGPL, а драйвер MySQL - лицензирован GPL. Производительность драйвера MariaDB кажется очень хорошим.

Вопрос : В какой степени драйвер MariaDB JDBC является идеальной заменой для драйвера JDBC MySQL?

Я не ищу дискуссию об относительных достоинствах этих двух. Но я надеюсь, что кто-то сможет ответить по одной из следующих тем:

  • Драйвер JDBC от MariaDB имеет важные проблемы с X и Y, поэтому у вас возникнут проблемы, если вы используете любой из них.
  • На основе какой-либо статьи или спецификации или кода или других доказательств драйвер JDBC MariaDB полностью реализует [по крайней мере] все методы, доступные в драйвере MySQL. Все будет хорошо.
11 голосов | спросил mdahlman 16 J0000006Europe/Moscow 2013, 10:58:24

2 ответа


5

Я немного нервничаю.

Во-первых, потенциал роста: я использовал драйвер MariaDB JDBC в службе «всегда включен» в производстве с пулом подключения к базе данных, и он работает нормально уже пару месяцев. Служба использует только базовые функции JDBC с простыми запросами (например, никаких объединений, без капли). Я собираюсь выпустить еще одну услугу «всегда на», которая использует драйвер MariaDB JDBC аналогичным образом. Я решил использовать драйвер MariaDB JDBC после (повторного) просмотра исходного кода: по сравнению с исходным кодом драйвера Oracle JDBC исходный код драйвера JDBC от MariaDB намного читабельнее и понятнее.

Но у меня создается впечатление (9/2014). замедлился (ссылка на график, показывающий ошибки, созданные и устраненные). Если я просмотрю open ошибок. Я вижу много серьезных ошибок, открытых слишком долго (проблемы с Hibernate, а также часовые пояса /даты). Некоторые из них могут быть не ошибками, но тогда они должны были быть закрыты к настоящему времени. Я также столкнулся с одной ошибкой (через STASH-4012 ), который должен быть повторно открыт: ошибка CONJ-72 закрыт, но последний комментарий (с 4/2014) указывает на то, что проблема не разрешено для спящего режима.

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

ответил vanOekel 5 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowFri, 05 Sep 2014 18:26:37 +0400 2014, 18:26:37
2

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

ответил Demi 1 MarpmSun, 01 Mar 2015 21:49:20 +03002015-03-01T21:49:20+03:0009 2015, 21:49:20

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132