Oggi ho dovuto aggiornare il mio server MySQL da MySQL 5.5 a MySQL 5.6. Questa era la procedura che ho usato per aggiornare, ma puoi anche usarla per installarla da zero, se necessario. Iniziamo con questa guida per mostrarti come installare MySQL 5.6 su CentOS 6.
Requisiti
- Scatola CentOS 6 semplice (senza cPanel)
- Backup aggiornati di tutti i tuoi database MySQL :sebbene questa installazione/aggiornamento di rpm non dovrebbe influire sui tuoi database, si consiglia di eseguire un nuovo backup di tutti i tuoi database.
Per eseguire il backup di tutti i tuoi database mysql puoi usare questa linea veloce:
mysqldump -u root -p --all-databases > /tmp/all-databases.sql
Ciò richiederà la tua password di root e genererà un dump MySQL tutto in uno situato in /tmp/all-databases.sql
Fase 1:installa il repository della community MySQL
Non importa se hai già installato MySQL o meno, questo sostituirà il tuo attuale numero di giri MySQL se esiste una versione precedente di MySQL, come nel mio caso. Questo è davvero importante, devi sempre creare i tuoi backup completi di tutti i tuoi database prima di procedere con il nostro tutorial su come installare mysql 5.6 su CentOS 6.x.
La prima cosa che devi fare è configurare il repository ufficiale della community MySQL, da cui prenderemo MySQL 5.6 rpms. Questo può essere fatto usando questi comandi:
wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm rpm -Uvh mysql-community-release-el6-5.noarch.rpm
A questo punto dovresti essere pronto per installare MySQL 5.6 su CentOS 6.
Passaggio 2:installa MySQL 5.6 su CentOS 6
Digita i seguenti comandi per installare MySQL 5.6
yum mysql mysql-server -y
L'output dovrebbe essere simile a questo:
[[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]:~]
Un'immagine reale dal processo di installazione di MySQL 5.6:
Digita il seguente comando per verificare se tutti i pacchetti MySQL 5.6 rpm sono stati installati correttamente:
rpm -qa | grep mysql
L'output dovrebbe essere simile a questo:
[[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]:~]
Avvia MySQL 5.6 e aggiungi il servizio al processo di avvio:
chkconfig mysqld on service mysqld start
Verifica che MySQL 5.6 sia in esecuzione
[[email protected]:~]mysql -V mysql Ver 14.14 Distrib 5.6.35, for Linux (x86_64) using EditLine wrapper
Ora prova a connetterti alla tua 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>
Ora riavvia MySQL per assicurarti che tutto funzioni come previsto nei tuoi siti web.
service mysqld restart
Se MySQL non si avvia in questo modo:
[[email protected]:~]service mysqld restart Stopping mysqld: [ OK ] MySQL Daemon failed to start. Starting mysqld: [FAILED]
Controlla i tuoi log MySQL, è possibile che le vecchie variabili my.cnf deprecate non funzionino più sulla versione 5.6, come è successo a me:
[[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
Nel mio caso e la vecchia "table_cache" deprecata impediva a MySQL 5.6 di avviarsi correttamente, rimosso dal file /etc/my.cnf, riavviato di nuovo e tutto funzionava:
[[email protected]:~]service mysqld restart Stopping mysqld: [ OK ] Starting mysqld: [ OK ] [[email protected]:~]
È tutto. Come vedi, l'aggiornamento a MySQL 5.6 da 5.5 o l'installazione di MySQL 5.6 su CentOS dal MySQL Community Repo ufficiale è piuttosto semplice.
E, nel caso qualcosa vada davvero storto, puoi eliminare la tua versione 5.6 e reinstallare la 5.5 per ripristinare tutti i tuoi database dal backup effettuato in precedenza.
Per favore fatemi sapere se avete domande o dubbi su questo tutorial. Alla fine sei riuscito a installare MySQL 5.6 su CentOS 6?
Link utili:
- Repo della community MySQL per CentOS