Actualización de MySQL 5.5 a MySQL 5.7

29

Busqué un tutorial para tontos sobre cómo actualizar mi servidor MySQL 5.5 a MySQL 5.7. Estoy usando ubuntu 14.04. Ya he probado los tutoriales en el sitio web de MySQL. ¿Cómo puedo actualizar mi servidor?

Cgnkev
fuente
Los documentos de MySQL dicen: "Se admite la actualización de más de un nivel de versión, pero solo si actualiza un nivel de versión a la vez. Por ejemplo, actualice de 5.1 a 5.5 y luego a 5.6. Siga las instrucciones de actualización para cada versión, en sucesión ". así que deberías hacer la actualización en dos pasos 5.5 -> 5.6 -> 5.7
iterq

Respuestas:

74

Esto funcionó para mí:

wget https://dev.mysql.com/get/mysql-apt-config_0.8.10-1_all.deb
sudo gdebi mysql-apt-config_0.8.10-1_all.deb
sudo apt-get update
sudo apt-get install mysql-server

El segundo comando pedirá entrada:

ingrese la descripción de la imagen aquí

Después de elegir 5.7, elija "aplicar"


$ mysql --version
mysql  Ver 14.14 Distrib 5.7.8-rc, for Linux (x86_64) using  EditLine wrapper

No olvide ejecutar mysql_upgrade después de la instalación para actualizar las tablas del sistema y reiniciar el servidor, siguiendo la guía de actualización de MySQL .

$ mysql_upgrade

o

$ sudo mysql_upgrade -u root -p

Y reiniciar mysql

sudo service mysql restart
Rinzwind
fuente
1
He actualizado mi mysql usando este método pero rompió mi apache2, ahora estoy recibiendo 500 en todos mis sitios alojados. askubuntu.com/questions/795868/…
Rahul K Jha
1
Creo que la nueva versión de enlace deb es: dev.mysql.com/get/mysql-apt-config_0.8.0-1_all.deb
zx1986
44
Tenga en cuenta que sudo mysql_upgrade -u root -pse requiere !!
Jadeye
2
La url del parámetro wget continuará cambiando a medida que se publiquen nuevas versiones. Vaya aquí dev.mysql.com/downloads/repo/apt y consulte la parte inferior de la página
Gerbus
1
¿cómo puedo choose "apply"... presiono enter y me lleva de nuevo al mismo paso y otra vez
Umair
28

Puedes ver mi comentario de que la solución de @Rinzwind no funcionó en mi caso (Ubuntu 14.04, Mysql 5.5). Así que busqué en Google la solución y encontré la respuesta que funcionó para mí en Digital Ocean Tutorial .

En primer lugar, haga una copia de seguridad de toda su base de datos

mysqldump --all-databases > all_databases.sql

Si el comando anterior no funcionó, intente con el siguiente.

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

Estoy pegando la parte particular del tutorial que funcionó para mí.

Si desea instalar MySQL 5.7, deberá agregar el nuevo repositorio de paquetes APT desde la página del repositorio APT de MySQL. Haga clic en Descargar en la parte inferior derecha, luego copie el enlace en la página siguiente desde No, gracias, simplemente inicie mi descarga. Descargue el paquete .deb en su servidor.

wget https://dev.mysql.com/get/mysql-apt-config_0.8.1-1_all.deb

Luego, instálelo usando dpkg.

sudo dpkg -i mysql-apt-config_0.8.1-1_all.deb

Verá un mensaje que le pregunta qué producto MySQL desea configurar. La opción del servidor MySQL, que está resaltada, debería decir mysql-5.7. Si no es así, presione ENTER , luego desplácese hacia abajo a mysql-5.7 usando las teclas de flecha y presione ENTER nuevamente.

Una vez que la opción dice mysql-5.7, desplácese hacia abajo en el menú principal para Aplicar y presione ENTER nuevamente. Ahora, actualice su índice de paquete.

sudo apt-get update

Finalmente, instale el paquete del servidor MySQL, que ahora contiene MySQL 5.7.

sudo apt-get install mysql-server

Ahora actualice todas las bases de datos mysql.

sudo mysql_upgrade -u root -p

Ahora reinicie el servidor mysql.

sudo service mysql restart

Siempre encuentre la última versión del archivo mysql-at-config en https://dev.mysql.com/downloads/repo/apt/

Rahul K Jha
fuente
2
Recibo el siguiente error durante la instalación de mysql-server: W: Error de GPG: repo.mysql.com confiable InRelease: Las siguientes firmas no eran válidas: KEYEXPIRED 1487236823 KEYEXPIRED 1487236823 KEYEXPIRED 1487236823
Snigdha Batra
3
@SnigdhaBatra, es un error conocido . Use el comando sudo apt-key adv --keyserver pgp.mit.edu --recv-keys A4A9406876FCBD3C456770C88C718D3B5072E1F5para resolver su problema.
Rahul K Jha
Entiendo que la clave A4A9 ~ no se puede recuperar, así que no pasa nada
Lucas Bustamante
¿Qué versión de Ubuntu estás usando?
Rahul K Jha
1
Fwiw, para hacer una copia de seguridad de todas las bases de datos, también tuve que especificar un usuario mysqldump(según esta respuesta ). por ejemplo:mysqldump -u root -p --all-databases > alldb.sql
Nick F
3

Esto también puede suceder cuando se actualiza de 14.04 a 16.04, lo que provoca una actualización de mysql no compatible (5.5 -> 5.7), que no es una ruta de actualización admitida según lo documentado por mysql . La forma más fácil de evitar esto es actualizar mysql a 5.6 mientras todavía está por debajo de 14.04. Lo logras primero (¡por supuesto!) Volcando todas tus bases de datos;

nombre de host # mysqldump --lock-all-tables -u root -p --all-bases de datos> backup.sql

luego actualizar a mysql 5.6;

nombre de host # apt-get install mysql-server-5.6 mysql-client-5.6 mysql-server-core-5.6 mysql-client-core-5.6

De esta manera, todas sus bases de datos se actualizan en su lugar y (en mis máquinas hasta ahora) de forma totalmente segura y transparente a 5.6. El único problema después de la actualización puede ser las entradas TIMESTAMP. Ahora, incluso después de una actualización do-release a 16.04, mysql todavía se deja en 5.6 y los problemas que rodean la actualización no compatible de 5.5 directamente a 5.7 durante la actualización de la versión nunca aparecen.

Espero que esto ayude,

Kailee

Kailee
fuente