En esta entrada, se va a proceder a explicar como actualizar MySQL a la versión 5.6 o 5.7.

Para ello, lo primero de todo es realizar un backup/dump de todas las bases de datos. Podemos realizar un backup de todas las bbdd en un único fichero:

mysqldump -u root -p --all-databases > allbbdd.sql

 

O bien generar un pequeño script que nos la separe por ficheros, editando el usuario y contraseña, por supuesto.:

#! /bin/bash
MYSQL_USER="root"
MYSQL_PASS="5BOatYsnVvlq"
# The current date
date=$(date +%Y-%m-%d)

# The folder that will cointain all the backups
BACKUP_DIR=/root/backup/$date
# End user defined variables

# If the output folder doesn't exists create it
test -d $BACKUP_DIR || mkdir -p $BACKUP_DIR
# Get the database list, excluding some db names
for db in $(mysql -B -s -u $MYSQL_USER --password=$MYSQL_PASS -e 'show databases' | grep -vE '(information_schema|performance_schema|mysql)' )
do
# dump each database in a separate file
mysqldump -u $MYSQL_USER --password=$MYSQL_PASS $db | gzip > $BACKUP_DIR/$db.sql.gz
done

 

Una vez tengamos el backup, procedemos parar MySQL a hacer un backup del datadir de MySQL

mkdir /var/lib/mysqlcopy

 

cp -aR /var/lib/mysql/* /var/lib/mysqlcopy

 

Después, instalamos el repositorio community de MySQL (Importante, si tenemos activo el repositorio de ATOMIC, será necesario deshabilitarlo):

yum install http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm

 

Ahora, editamos el repositorio y habilitamos la versión que nos interese, por ejemplo, a continuación se activa la versión 5.6 pero desactivamos la 5.7

vim /etc/yum.repos.d/mysql-community.repo

 

[mysql56-community]
enabled=1
[mysql57-community]
enabled=0

 

Una vez hecho esto, simplemente instalamos MySQL:

yum install mysql

 

Después, editaremos el fichero /etc/my.cnf y añadiremos la opción skip-grant-tables, de lo contrario no podremos entrar en MySQL. Una vez hecho esto, lanzaremos el siguiente comando que procederá con el upgrade de las bbdd a 5.6:

mysql_upgrade -uadmin -p

 

(Insertar el usuario y contraseña en cuestión)

Y por último, comentamos la línea skip-grant-tables añadida anteriormente y reiniciamos mysqld.

Ya está, hemos actualizado MySQL a 5.6.


0 comentarios

Deja una respuesta

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *