Aujourd'hui, j'ai dû mettre à niveau mon serveur MySQL de MySQL 5.5 vers MySQL 5.6. C'est la procédure que j'ai utilisée pour mettre à jour, mais vous pouvez également l'utiliser pour installer à partir de zéro si vous en avez besoin. Commençons par ce guide pour vous montrer comment installer MySQL 5.6 sur CentOS 6.
Exigences
- Boîte CentOS 6 standard (sans cPanel)
- Sauvegardes fraîches de toutes vos bases de données MYSQL :même si cette installation/mise à niveau rpm ne devrait pas affecter vos bases de données, il est recommandé d'avoir une nouvelle sauvegarde de toutes vos bases de données.
Pour sauvegarder toutes vos bases de données mysql, vous pouvez utiliser cette ligne rapide :
mysqldump -u root -p --all-databases > /tmp/all-databases.sql
Cela vous demandera votre mot de passe root et générera un vidage MySQL tout-en-un situé à /tmp/all-databases.sql
Étape 1 :Installez le référentiel de la communauté MySQL
Peu importe que MySQL soit déjà installé ou non, cela remplacera vos RPM MySQL actuels si une version précédente de MYSQL existe, comme c'était le cas dans mon cas. Ceci est très important, vous devez toujours créer vos propres sauvegardes complètes de toutes vos bases de données avant de poursuivre notre tutoriel sur l'installation de mysql 5.6 sur CentOS 6.x.
La première chose que vous devez faire est de configurer le référentiel officiel de la communauté MySQL, d'où nous allons prendre les rpms MySQL 5.6. Cela peut être fait en utilisant ces commandes :
wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm rpm -Uvh mysql-community-release-el6-5.noarch.rpm
À ce stade, vous devriez être prêt à installer MySQL 5.6 sur CentOS 6.
Étape 2 :Installez MySQL 5.6 sur CentOS 6
Tapez les commandes suivantes pour installer MySQL 5.6
yum mysql mysql-server -y
Le résultat devrait ressembler à ceci :
[[email protected]:~]yum install mysql mysql-server -y Loaded plugins: fastestmirror, security Setting up Install Process Loading mirror speeds from cached hostfile ... ... ... Running Transaction Test Transaction Test Succeeded Running Transaction Warning: RPMDB altered outside of yum. Installing : mysql-community-common-5.6.35-2.el6.x86_64 1/7 Installing : mysql-community-libs-5.6.35-2.el6.x86_64 2/7 Installing : mysql-community-client-5.6.35-2.el6.x86_64 3/7 Installing : mysql-community-server-5.6.35-2.el6.x86_64 4/7 warning: /etc/my.cnf created as /etc/my.cnf.rpmnew Erasing : mysql-server-5.5.54-1.el6.remi.x86_64 5/7 warning: /var/log/mysqld.log saved as /var/log/mysqld.log.rpmsave Erasing : mysql-5.5.54-1.el6.remi.x86_64 6/7 Erasing : mysql-libs-5.5.54-1.el6.remi.x86_64 7/7 Verifying : mysql-community-common-5.6.35-2.el6.x86_64 1/7 Verifying : mysql-community-libs-5.6.35-2.el6.x86_64 2/7 Verifying : mysql-community-server-5.6.35-2.el6.x86_64 3/7 Verifying : mysql-community-client-5.6.35-2.el6.x86_64 4/7 Verifying : mysql-5.5.54-1.el6.remi.x86_64 5/7 Verifying : mysql-libs-5.5.54-1.el6.remi.x86_64 6/7 Verifying : mysql-server-5.5.54-1.el6.remi.x86_64 7/7 Installed: mysql-community-client.x86_64 0:5.6.35-2.el6 mysql-community-libs.x86_64 0:5.6.35-2.el6 mysql-community-server.x86_64 0:5.6.35-2.el6 Dependency Installed: mysql-community-common.x86_64 0:5.6.35-2.el6 Replaced: mysql.x86_64 0:5.5.54-1.el6.remi mysql-libs.x86_64 0:5.5.54-1.el6.remi mysql-server.x86_64 0:5.5.54-1.el6.remi Complete! [[email protected]:~]
Une image réelle du processus d'installation de MySQL 5.6 :
Tapez la commande suivante pour vérifier si tous les packages MySQL 5.6 rpm ont été correctement installés :
rpm -qa | grep mysql
Le résultat devrait ressembler à ceci :
[[email protected]:~]rpm -qa | grep mysql mysql-community-client-5.6.35-2.el6.x86_64 mysql-community-server-5.6.35-2.el6.x86_64 php-mysqlnd-5.6.30-1.el6.remi.x86_64 mysql-community-common-5.6.35-2.el6.x86_64 mysql-community-libs-5.6.35-2.el6.x86_64 mysql-community-release-el6-5.noarch [[email protected]:~]
Démarrez MySQL 5.6 et ajoutez le service au processus de démarrage :
chkconfig mysqld on service mysqld start
Vérifiez que MySQL 5.6 est en cours d'exécution
[[email protected]:~]mysql -V mysql Ver 14.14 Distrib 5.6.35, for Linux (x86_64) using EditLine wrapper
Essayez maintenant de vous connecter à votre console MySQL :
[[email protected]:~]mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 280 Server version: 5.6.35 MySQL Community Server (GPL) Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
Maintenant, redémarrez MySQL pour vous assurer que tout fonctionne comme prévu sur vos sites Web.
service mysqld restart
Si MySQL ne démarre pas comme ceci :
[[email protected]:~]service mysqld restart Stopping mysqld: [ OK ] MySQL Daemon failed to start. Starting mysqld: [FAILED]
Consultez vos journaux MySQL, il est possible que les anciennes variables obsolètes my.cnf ne fonctionnent plus sur la version 5.6, comme cela m'est arrivé :
[[email protected]:~]tail -100 /var/log/mysqld.log | grep ERR -i 2017-02-06 12:06:34 28942 [ERROR] /usr/sbin/mysqld: unknown variable 'table_cache=26536' 2017-02-06 12:06:34 28942 [ERROR] Aborting
Dans mon cas, l'ancien 'table_cache' obsolète empêchait MySQL 5.6 de démarrer correctement, supprimez-le du fichier /etc/my.cnf, redémarrez-le et tout fonctionnait :
[[email protected]:~]service mysqld restart Stopping mysqld: [ OK ] Starting mysqld: [ OK ] [[email protected]:~]
C'est tout. Comme vous le voyez, la mise à niveau vers MySQL 5.6 à partir de 5.5 ou l'installation de MySQL 5.6 sur CentOS à partir du dépôt officiel de la communauté MySQL est assez simple.
Et, en cas de problème, vous pouvez supprimer votre version 5.6 et réinstaller la 5.5 pour récupérer toutes vos bases de données à partir de la sauvegarde effectuée auparavant.
S'il vous plaît laissez-moi savoir si vous avez des questions ou des préoccupations concernant ce tutoriel. Avez-vous pu installer MySQL 5.6 sur CentOS 6 à la fin ?
Liens utiles :
- Référentiel communautaire MySQL pour CentOS