2014-01-10 2 views
2

От my reading от настроек MariaDB и активации TokuDB на 64-разрядном сервере Debian/Ubuntu - относительно простая задача.Переключение с MySQL на MariaDB

В настоящее время я использую mySQL и имею много (хорошо написано, я думаю) SQL на PHP, который использует PDO для доступа к базе данных. Я понимаю, что нет синтаксических различий между вкусами SQL, используемыми MariaDB и mySQL. Мои вопросы

  1. Означает ли это, что я могу просто экспортировать свой текущий файл БД, заменить все ссылки на InnoDB с ExtraDB, запустите скрипт на новом сервере MariaDB и быть запущен и работает?
  2. Другой потенциальной проблемой является phpMyAdmin. «Замена плагина» означает, что я могу в значительной степени продолжать использовать phpMyAdmin с сервером MariaDB?

И, наконец, есть ли какие-либо другие проблемы, о которых нужно знать до создания такого переключателя? Я бы очень признателен за любую помощь.

+1

Мы «перенесли» приложение Php, используя (Propel ORM) в MariaDB и не увидели никаких негативных эффектов, все работает точно так же, нам не приходилось ничем менять конфигурацию. phpMyAdmin работал точно так же. Это был мой опыт. –

+0

Одна вещь, которая изменилась для меня (но, вероятно, это также относится к более новым дистрибутивам mysql), что сетевое взаимодействие было отключено по умолчанию, поэтому возможен только доступ к сокету. –

ответ

3

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

Учитывая цель совместимости MariaDB, нет необходимости переключать операторы engine = innodb на что-либо еще, он понимает, что innodb = xtradb.

Наконец, если вы хотите начать конвертирование таблиц в механизм хранения TokuDB, ознакомьтесь с советами Quick Start Guide.

+0

Спасибо. Существуют ли какие-либо общие правила относительно того, когда НЕ использовать двигатель TokuDB? Я понимаю, что для таблиц, которые в основном используются для чтения, и немного/нет записей, MyISAM - лучший выбор, чем InnoDB. Возможно, есть ситуации, когда лучше избегать TokuDB? – DroidOS

+1

Несомненно. TokuDB не поддерживает ограничения внешнего ключа (как это делает InnoDB). Кроме того, если ваша рабочая нагрузка помещается в память, тогда InnoDB обычно является лучшим исполнителем (и, скорее всего, для вас не важны изменения сжатия и онлайн-схемы). – tmcallaghan

Смежные вопросы