¿Cómo puedo degradar mysql 5.7 a 5.6 en Ubuntu 16.04?

11

Estoy descubriendo que MySQL 5.7 es un gran consumidor de memoria y quiero volver a MySQL 5.6.

Sin embargo, cada vez que intento desinstalar 5.7 e instalar 5.6 termino con un servicio MySQL que no se inicia. También necesito asegurarme de mantener todas mis bases de datos.

¿Alguien puede decirme un simple paso a paso sobre cómo retroceder mysql de 5.7 a 5.6?

**UPDATE**
$ dpkg -l | grep mysql    

rc  akonadi-backend-mysql                                1.13.0-2ubuntu4                                      all          MySQL storage backend for Akonadi  
ii  dbconfig-mysql                                       2.0.4ubuntu1                                         all          dbconfig-common MySQL/MariaDB support  
ii  libdbd-mysql-perl                                    4.033-1build2                                        amd64        Perl5 database interface to the MySQL database  
rc  libmysqlclient18:amd64                               5.6.30-0ubuntu0.15.10.1                              amd64        MySQL database client library  
rc  libmysqlclient18:i386                                5.6.30-0ubuntu0.15.10.1                              i386         MySQL database client library  
ii  libmysqlclient20:amd64                               5.7.12-0ubuntu1.1                                    amd64        MySQL database client library  
ii  mysql-client-5.7                                     5.7.12-0ubuntu1.1                                    amd64        MySQL database client binaries  
ii  mysql-client-core-5.7                                5.7.12-0ubuntu1.1                                    amd64        MySQL database core client binaries  
ii  mysql-common                                         5.7.12-0ubuntu1.1                                    all          MySQL database common files, e.g. /etc/mysql/my.cnf  
iU  mysql-server                                         5.7.12-0ubuntu1.1                                    all          MySQL database server (metapackage depending on the latest version)  
rc  mysql-server-5.5                                     5.5.43-0ubuntu0.14.10.1                              amd64        MySQL database server binaries and system database setup  
rc  mysql-server-5.6                                     5.6.16-1~exp1                                        amd64        MySQL database server binaries and system database setup  
iF  mysql-server-5.7                                     5.7.12-0ubuntu1.1                                    amd64        MySQL database server binaries and system database setup  
ii  mysql-server-core-5.7                                5.7.12-0ubuntu1.1                                    amd64        MySQL database server binaries  
ii  php-mysql                                            1:7.0+42+deb.sury.org~xenial+2                       all          MySQL module for PHP [default]  
ii  php5.6-mysql                                         5.6.23-1+deb.sury.org~xenial+2                       amd64        MySQL module for PHP  
ii  php7.0-mysql                                         7.0.8-2+deb.sury.org~xenial+1                        amd64        MySQL module for PHP  
parné
fuente
Los repositorios oficiales de Ubuntu 16.04 solo tienen 5.7, por lo que primero deberá encontrar un repositorio que proporcione 5.6. Tal vez el oficial de MySQL .
fkraiem
Ya he agregado el repositorio de confianza para acceder a MySQL 5.6
dibs
No debería hacer eso, especialmente porque parece que hay 5.6 paquetes para Xenial.
fkraiem
Por ejemplo, el sistema para administrar los servicios ha cambiado (Trusty usa upstart, Xenial usa systemd), por lo que no es sorprendente que un servicio en un paquete hecho para Trusty (con upstart) no se inicie en Xenial (con systemd).
fkraiem
Ah wow Quizás es por eso que no importa lo que he intentado parece funcionar.
Dibs

Respuestas:

7

Primero haga una mysqldumpde todas sus bases de datos (incluidas information_schema). Luego "pare" mysql "y esto eliminará todo lo relacionado con mysql:

sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-5.7 mysql-client-core-5.7

# Backup 5.6 config and data without deleting
sudo mv /etc/mysql /etc/mysql-5.6-backup
sudo mv /var/lib/mysql /var/lib/mysql-5.6-backup
sudo apt-get autoremove
sudo apt-get autoclean

y entonces

sudo apt-get install mysql-client-5.6
sudo apt-get update

Advertencias:

  • Ubuntu cambió a systemd con 16.04. Es posible que también deba iniciar 16.04 con el arranque cuando use mysql 5.6.
Tyler
fuente
1
Estoy bastante seguro de que $ sudo rm -rf on / var / lib / mysql eliminará todas mis bases de datos.
Dibs
Lo hará, pero no puede mantener / var / lib / mysql / de todos modos. Necesita un volcado de su base de datos para poder volver a cargarla. De lo contrario se recogería la configuración desde el 5,7 que no son válidos en el 5,6
Rinzwind
1
Veo otro error: mysql debe detenerse antes de eliminarlo. Y otra advertencia: cambiamos a systemd entre 5.6 y 5.7. No es un factor decisivo, pero vale la pena mencionarlo
Rinzwind
@Rinzwind, ¿qué significa esto prácticamente en relación con el cambio del sistema? También es bueno saber que TENGO que volcar dbs. Me aseguraré de hacer eso primero.
dibs
3
mysql-client-5.6 ya no está disponible en apt-get por defecto. Ver askubuntu.com/questions/762384/… para saber cómo instalarlo.
Tony
0

Agregué el repositorio Ubuntu 14.04 (en Ubuntu 18.04):

sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'

Puedo instalar:

sudo apt install mysql-client-5.6
Rahul Thakur
fuente
2
Esta es una muy mala idea . Ver askubuntu.com/questions/499800/… .
fosslinux
Está bien para hacer esto, pero no actualice y siga con "-r" eliminar una vez que instale d "sudo add-apt-repository -r 'deb archive.ubuntu.com/ubuntu trusty universe'" tanto como sea un mala idea dejar esto en su repositorio, si lo elimina una vez que se instala 5.6, no creo que sea una idea tan mala como el comentario anterior. La misma respuesta aquí tiene 60 votos a favor, e hizo una actualización de apt-get, que tiene más potencial para causar problemas askubuntu.com/questions/762384/…
MagicLAMP