Un petit tuto pour effectuer la migration de MySQL vers Percona sur une Debian (Stretch). Si vous souhaitez seulement installer Percona passer directement à la deuxième étape. Percona Server est un serveur de base de données pour MySQL qui fournit des performance supérieure ainsi qu’une meilleur scalabilité. Avant toute chose il faut savoir qu’effectuer cette migration va entraîner un down de vos applications nécessitant mysql. Percona est connu pour être plus performant que MySQL, il existe de nombreux benchmark sur internet.
Attention avant toute manipulation, penser à effectuer un dump de votre base en cas de soucis.
J’ai également rencontré un soucis avec la version 4.4 de phpMyAdmin, il m’était impossible d’accéder à la gestion de utilisateur. Dans un prochain article j’expliquerais comment passer à la version 4.6 de phpMyAdmin qui corrige ce problème.
Récupérer la version actuelle de MySQL
Etape nécessaire pour ensuite installer la même version de percona
1 2 3 |
mysql -u root -p |
1 2 3 |
SHOW VARIABLES LIKE "version"; |
Désinstaller MySQL
- Couper MySQL
1 2 3 |
sudo service mysql stop |
- Supprimer MySQL
1 2 3 |
sudo apt-get remove mysql-server mysql-client mysql-common |
Installer Percona depuis le repo apt
- Récupérer le paquet du repo depuis le site de Percona
1 2 3 |
wget https://repo.percona.com/apt/percona-release_0.1-4.$(lsb_release -sc)_all.deb |
- Installer le fichier téléchargé avec dpkg
1 2 3 |
sudo dpkg -i percona-release_0.1-4.$(lsb_release -sc)_all.deb |
Un ficher va être automatiquement créé /etc/apt/sources.list.d/percona-release.list
- Mettre à jour le cache et installer le paquet. Remplacer x.x par l’ancienne version de MySQL présente. Dans mon cas il s’agissait de 5.7
1 2 3 4 |
sudo apt-get update sudo apt-get install percona-server-server-x.x |
- Lancer un nettoyage
1 2 3 |
sudo apt-get autoremove |
Apt-Pinning le paquet
Dans certain cas vous avez besoin « d’épingler » le paquet sélectionné pour éviter les mise à jour des repo des distributions. Vous devez créer un nouveau fichier /etc/apt/preferences.d/00percona.pref et y insérer le contenu suivant :
1 2 3 4 5 |
Package: * Pin: release o=Percona Development Team Pin-Priority: 1001 |
Upgrade de la version 5.5 à la version 5.6
Arrêter le service mysql
1 2 3 |
sudo service mysql stop |
Installer le nouveau serveur
1 2 3 |
sudo apt-get install percona-server-server-5.6 |
L’installation va lancer automatique mysql_upgrade pour migrer les droits sur les nouvelles tables, reconstruire les indexes, et redémarrer le serveur.
Upgrade de la version 5.6 à la version 5.7
Arrêter le service mysql
1 2 3 |
sudo service mysql stop |
Installer le nouveau serveur
1 2 3 |
sudo apt-get install percona-server-server-5.7 |
Dans le cas de cet upgrade, le script ne va pas lancer automatiquement mysql_upgrade, contraire à la version précédente. Il faut donc lancer la commande manuellement et redémarrer le service.
1 2 3 |
sudo mysql_upgrade -u root -p |
1 2 3 |
service mysql restart |
Supprimer les paquets obsolètes
1 2 3 |
sudo apt-get autoremove |
Source : Doc de percona