Jak Drop-In zamienić MySQL na MariaDB?

18

Mam już kilka baz danych MySQL uruchomionych na moim serwerze Ubuntu 14.04 i chciałbym migrować je tak płynnie, jak to możliwe, do kompatybilnej MariaDB. Używam również PHPMyAdmin. Czy można to zrobić inaczej niż wyeksportować wszystkie dane, a następnie ponownie zaimportować je po instalacji?

Andreas Hartmann
źródło

Odpowiedzi:

31

Okazało się to tak proste, jak:

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

Nie zepsuje to phpmyadmin ani żadnej aplikacji internetowej, dopóki nie powiesz „nie”, gdy zostaniesz zapytany, czy chcesz usunąć bazę danych i użyjesz tych samych poświadczeń, które użyłeś dla ciebie mysql-DB. Przed zrobieniem tego również wykonaj kopię zapasową danych.

Andreas Hartmann
źródło
Co z migracją ustawień? Z pewnością mają one osobne lokalizacje konfiguracji w / etc i (prawdopodobnie) inną składnię konfiguracji?
thomasrutter
1
Automatycznie migruje ustawienia, ale ostrzega o możliwych niezgodnościach podczas instalacji mariadbu
Andreas Hartmann
2
Nie poprosił mnie o opcję usunięcia żadnych baz danych, użyłem również mojego starego my.cnf jako konfiguracji podstawowej. To była jedna z najbardziej płynnych aktualizacji, jakie do tej pory zrobiłem.
Arda,
Ponadto, aby wspomnieć o oficjalnej stronie MariaDB, dostępne są nowsze wersje do instalacji jako repozytoria lub debaty . Repozytoria Ubuntu dają mi obecnie wersję 5.5, ale repozytoria mariadb dają mi wersję 10.1, która ma całkiem spore różnice.
Arda,
1
Podczas odinstalowywania MySQL powinien był zapytać, czy usunąć bazy danych
Andreas Hartmann
1

Odpowiedź Andreasa Hartmanna jest niepełna, a także usuwa PHPMYADMIN i MYSQLI

Dlatego oprócz serwera mariadb należy zainstalować następujące elementy:

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

Aby phpMyAdmin znów działał tylko na SSL, musisz ponownie skonfigurować etc / phpmyadmin / apache.conf, aby uwzględnić http => przepisywanie https.

Jeśli korzystasz z serwera LAMP z Postfix i Dovecot, musisz także wykonać następujące czynności:

**** 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

Ostatnie trzy (3) instrukcje apt-get mogą nie być konieczne, ponieważ libclass-dbi-mysql-perl może je dla ciebie zainstalować, w zależności od aktualizacji listy pakietów.

Jeśli używasz innego oprogramowania, musisz je przetestować i zainstalować brakujące biblioteki, które mogły zostać usunięte przez obliczenia automatycznej zależności.

Aktualizacja
Usługa FTP również została usunięta (w moim przypadku PureFTPD) i musiała zostać zainstalowana: apt-get install pure-ftpd-common pure-ftpd-mysql

odszedł
źródło
2
Właściwie dla mnie phpmyadmin nie został usunięty. Ponadto wątpię, aby te pakiety były potrzebne tylko do uruchomienia serwera, zwłaszcza te pakiety deweloperskie są przeznaczone dla programistów, a nie użytkowników końcowych.
Andreas Hartmann