Як заміну замінити 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 та (ймовірно) різному синтаксисі конфігурації?
thomasrutter

1
Він перемістить налаштування автоматично, але попередить вас про можливі несумісності при встановленні mariadb
Andreas Hartmann

2
Він не просив у мене можливості видаляти будь-які бази даних, також я використовував мій старий my.cnf в якості базової конфігурації. Це було одне з найплавніших оновлень, які я зробив досі.
Арда

Також, на офіційному сайті MariaDB є новіші версії, доступні для встановлення у сховищах або дебах . На даний момент репортаж Ubuntu дає мені v5.5, але mariadb repos дає мені v10.1, що має зовсім небагато відмінностей.
Арда

1
Коли ви видаляєте MySQL, ви повинні запитати, чи потрібно видаляти бази даних
Andreas Hartmann

1

Відповідь Андреаса Хартмана є неповною, вона також видаляє PHPMYADMIN та MYSQLI

Отже, крім mariadb-сервера , слід встановити наступне:

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

Щоб phpMyAdmin знову працював лише на SSL, вам потрібно буде перенастроїти etc / phpmyadmin / apache.conf, щоб включити перезапис http => https.

Якщо ви використовуєте сервер 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 не був видалений. Також я сумніваюся, що вам знадобляться ці пакети лише для запуску сервера, особливо ці пакети розробників призначені для розробників, а не для кінцевих користувачів.
Андреас Хартманн
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.