Как Drop-In заменить MySQL на MariaDB?

18

У меня уже есть несколько баз данных MySQL, работающих на моем сервере Ubuntu 14.04, и я хотел бы перенести их как можно более плавно на совместимую MariaDB. Я также использую PHPMyAdmin. Есть ли другой способ сделать это, кроме как экспортировать все данные и затем снова импортировать их после установки?

Андреас Хартманн
источник

Ответы:

31

Это оказалось так же просто, как:

sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt-get install mariadb-server

Это не сломает ваш phpmyadmin или любое веб-приложение, если вы ответите «нет», когда вас спросят, хотите ли вы удалить свою базу данных, и используете ли вы те же учетные данные, которые вы использовали для mysql-DB. Также сделайте резервную копию ваших данных, прежде чем делать это.

Андреас Хартманн
источник
Как насчет переноса настроек? Конечно, у них есть отдельные местоположения конфигурации в / etc и (вероятно) другой синтаксис конфигурации?
Томасруттер
1
Он перенесет настройки автоматически, но предупредит вас о возможных несовместимостях при установке mariadb
Андреас Хартманн
2
Он не попросил меня удалить все базы данных, а также использовал мой старый my.cnf в качестве базовой конфигурации. Это было одно из самых плавных обновлений, которые я сделал до сих пор.
Арда
Также стоит упомянуть, что официальный сайт MariaDB имеет более новые версии доступные для установки в виде репозиториев или debs . Репозитории Ubuntu в настоящее время дают мне v5.5, но репозитории mariadb дают мне v10.1, что имеет немало различий.
Арда
1
Когда вы удаляете MySQL, он должен был спросить вас, нужно ли удалять базы данных
Андреас Хартманн,
1

Ответ Андреаса Хартмана неполон, и он также удаляет PHPMYADMIN и MYSQLI

Итак, помимо mariadb-сервера , вам необходимо установить следующее:

apt-get install mariadb-client libmariadbclient-dev libmariadbd-dev phpmyadmin

Чтобы phpMyAdmin снова работал только по SSL, вам нужно перенастроить файл etc / phpmyadmin / apache.conf, включив в него http => https rewrite.

Если вы используете сервер LAMP с Postfix с Dovecot, вам также необходимо сделать следующее:

**** Everything worked except MAIL.  Dovecot not configured properly and can’t send/receive mail.
apt-get install dovecot-mysql       fixed mail receipt but sending is still blocked.
apt-get install libclass-dbi-mysql-perl
apt-get install php-auth
apt-get install php-pear
apt-get install postfix-mysql
**** EVERYTHING WORKING FINE HERE

Последние три (3) оператора apt-get могут быть необязательными, поскольку libclass-dbi-mysql-perl может установить их для вас, в зависимости от того, как обновляется список пакетов.

Если вы работаете с другим программным обеспечением, вам необходимо протестировать его и установить все недостающие библиотеки, которые могли быть удалены с помощью автоматических вычислений.

Обновление
Служба FTP также была удалена (в моем случае PureFTPD), и ее необходимо было установить: apt-get install pure-ftpd-common pure-ftpd-mysql

ушел
источник
2
На самом деле, для меня phpmyadmin не был удален. Кроме того, я сомневаюсь, что вам понадобятся эти пакеты просто для запуска сервера, особенно эти dev-пакеты предназначены для разработчиков, а не для конечных пользователей.
Андреас Хартманн