Atención no probar esta solución en sistemas en producción. Es solo una demostración de prueba.
Escenario
Por la razón que fuera queremos actualizar la versión de MySQL de 5.7 a 8.0 en ubuntu 16.04. En mi caso quería probar si con la actualización mejoraba cierto problemillas que estaba teniendo con la codificación de caracteres.Problema
No tiene porque ser un problema en sí, pero, al estar en producción, es necesario cerciorarse que disponemos de una copia de seguridad completa y que el proceso puede ser revertido en caso de fallo.Solución
El primer paso consiste en asegurarse que nuestro sistema cumple con los requisitos necesarios para instalar la nueva versión de MySQL. Si no tienes instalado el repositorio oficial de MySQL, se puede descargar de esta página e instalarlo con el siguiente comando, en mi caso:
1 |
$ sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb |
1 2 |
$ sudo apt-get update $ sudo apt-get install mysql-shell |
1 |
$ mysqlsh root@127.0.0.1 -e "util.checkForServerUpgrade();" |
1 |
$ mysqldump --events --routines --triggers --all-databases -uroot -p -r ./localhost.dump |
1 |
$ sudo cp -rap /var/lib/mysql/* ~/backup/mysql/ |
1 2 |
$ sudo cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysqd/mysql.conf.d/mysqld.cnf-57 $ sudo cp /etc/mysql/conf.d/mysql.cnf /etc/mysql/conf.d/mysql.cnf-57 |
1 |
sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb |
1 2 |
$ sudo apt update $ sudo apt install mysql-server mysql-client |
1 |
$ mysql -u root -p |
1 2 |
SET GLOBAL innodb_fast_shutdown = 1; exit |
1 |
$ mysql_upgrade -u root -p |
1 2 |
$ mysql --version mysql Ver 8.0.15 for Linux on x86_64 (MySQL Community Server - GPL) |