Como posso fazer o downgrade do mysql 5.7 para 5.6 no Ubuntu 16.04?

11

Eu estou achando o MySQL 5.7 um grande consumo de memória e quero reverter para o MySQL 5.6.

No entanto, sempre que tento desinstalar o 5.7 e instalar o 5.6, acabo com um serviço MySQL que não inicia. Também preciso garantir que todos os meus bancos de dados sejam mantidos.

Alguém pode me dizer um passo a passo simples sobre como reverter o mysql de 5.7 para 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  
dibs
fonte
Os repositórios oficiais do Ubuntu 16.04 possuem apenas 5,7, então primeiro você precisará encontrar um repositório que forneça a versão 5.6. Talvez o oficial do MySQL .
fkraiem
Eu já adicionei o repositório confiável para acessar o MySQL 5.6
dibs
Você não deve fazer isso, especialmente porque parece que existem pacotes 5.6 para o Xenial.
fkraiem
Por exemplo, o sistema para gerenciar serviços mudou (o Trusty usa o iniciante, o Xenial usa o systemd), portanto, não é de surpreender que um serviço em um pacote feito para o Trusty (com o iniciante) não seja iniciado no Xenial (com o systemd).
fkraiem
Ah uau. Talvez seja por isso que não importa o que tentei pareça funcionar.
Dibs

Respostas:

7

Primeiro, crie um mysqldumpde todos os seus bancos de dados (inclusive information_schema). Então "pare" o mysql "e isso removerá qualquer coisa relacionada ao 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

e depois

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

Advertências:

  • O Ubuntu mudou para o systemd com 16.04. Você pode precisar iniciar o 16.04 com upstart também ao usar o mysql 5.6.
Tyler
fonte
1
Tenho certeza de que $ sudo rm -rf em / var / lib / mysql irá acabar com todos os meus bancos de dados.
Dibs
Será, mas você não pode manter / var / lib / mysql / de qualquer maneira. Você precisa de um despejo de seu banco de dados para poder recarregá-lo. Caso contrário, você escolheria as configurações de 5,7 que são inválidas na
versão
1
Vejo outro erro: o mysql precisa ser parado antes de você removê-lo. E outro aviso: mudamos para systemd entre 5.6 e 5.7. Não é um dealbreaker, mas vale a pena mencionar
Rinzwind
@Rinzwind, o que isso praticamente significa em relação a: a mudança do sistema? Também é bom saber que eu tenho que despejar dbs. Vou me certificar de fazer isso primeiro.
Dibs
3
O mysql-client-5.6 não está mais disponível no apt-get por padrão. Veja askubuntu.com/questions/762384/… para saber como instalá-lo.
Tony
0

Adicionei o repositório Ubuntu 14.04 (no Ubuntu 18.04):

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

Eu sou capaz de instalar:

sudo apt install mysql-client-5.6
Rahul Thakur
fonte
2
Esta é uma péssima ideia . Veja askubuntu.com/questions/499800/… .
Fosslinux 24/05/19
Ok, faça isso, mas não atualize, e siga com "-r" remova uma vez que instale d "sudo add-apt-repository -r 'deb archive.ubuntu.com/ubuntu trusty universe'" tanto quanto É uma má idéia deixar isso no seu repositório, se você removê-lo depois que o 5.6 estiver instalado, não acho que seja uma idéia tão ruim quanto o comentário acima. A mesma resposta aqui tem 60 upvotes, e ele fez uma atualização do apt-get, que tem mais potencial para causar problemas askubuntu.com/questions/762384/…
MagicLAMP