Instale o mysql 5.6 no Ubuntu 18.04 LTS

5

Não consigo instalar o mySql 5.6 no meu Ubuntu 18.04 recém-instalado. Tentei a solução a partir de vários links (link1 link2 ...) mas sem sucesso nenhum.

Tenho 5,7 instalado, mas devido ao requisito do cliente, preciso fazê-lo de qualquer forma. Existem poucas alterações que tornam incompatível com 5.6 sem fazer alterações no código em cerca de 5 projetos em execução (7 desenvolvedores envolvidos) que foi iniciado quando eu estava usando o Ubuntu 17.10 com o mysql 5.6 .

ATUALIZAÇÃO: Ahmed sugeriu uma abordagem manual que é uma boa solução, mas eu gostaria que alguém soubesse fazer o modo adequado do Ubuntu para que mais pessoas fossem beneficiadas.

    
por Puru 29.04.2018 / 12:41

4 respostas

9

Eu tentei muitas abordagens até ter sucesso.

A abordagem que funcionou

A única abordagem que funcionou foi baixar o deb-bundble.tar do site MySQL e instalar os pacotes um por um. Eu segui estes passos:

  • Acesse a página de download do MySQL 5.6: link
  • Nas opções do SO, selecione "Ubuntu 14.04 64-bit"
  • Faça o download do deb-bundle, um arquivo chamado: mysql-server_5.6.40-1ubuntu14.04_amd64.deb-bundle.tar , geralmente, é a primeira opção
  • Descompacte o pacote em algum lugar usando: tar -xf mysql-server_5.6.40-1ubuntu14.04_amd64.deb-bundle.tar
    • O tar contém vários pacotes deb , incluindo mysql-server , mysql-community-server , ... etc
    • Tentei instalá-los usando: sudo dpkg -i <package-name> um por um, mas segui a ordem deles de acordo com as mensagens de erro que foram acionadas, por exemplo: primeiro tentei: sudo dpkg -i mysql-server_5.6.40-1ubuntu14.04_amd64.deb , ele falhou porque requer mysql-community-server_5.6.40-1ubuntu14.04_amd64.deb a ser instalado primeiro e assim por diante
    • Alguns dos pacotes foram instalados com sucesso, alguns produziram erros, depois que eu tentei sudo dpkg -i mysql-server_5.6.40-1ubuntu14.04_amd64.deb pela última vez que deu alguns erros, eu tentei desesperadamente: sudo apt-get install -f que pegou as dependências ausentes e voila, o MySQL Server 5.6 está com sucesso instalado, em funcionamento e

Abordagens que não funcionaram

Usando o Trusty Universal Repo

Vale a pena mencionar que tentei pela primeira vez a mesma abordagem que costumava funcionar no Ubuntu 16.04, ou seja, adicionar o repositório 'trusty universe' e tentar instalar o mysql-server-5.6, ou seja, eu o segui:

sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'
sudo apt-get update
apt-get install mysql-server-5.6

Esta abordagem não funcionou. Falhou porque há uma dependência initscripts que não pode ser instalada. Parece que foi substituído após o Ubuntu 16.04. Instalando suas substituições: util-util-linux sysvinit-utils também não ajudou.

Usando o MySQL apt config package

Eu também tentei usar o pacote de configuração do MySQL ( mysql-apt-config_0.7.3-1_all.deb ) que baixei deste repo: link e instalei via: sudo dpkg -i mysql-apt-config_0.7.3-1_all.deb . Ele não reconheceu o Ubuntu 18.04 (biônico), é claro, então, eu agi como se fosse xenial e configurei a versão do MySQL Server para 5.6, então tentei verificar qual versão do MySQL está disponível para instalação usando: apt-cache policy mysql-server mas também não funcionou, ainda tenho versões posteriores a 5.6.

Nota final

Embora as duas últimas abordagens não tenham funcionado, elas podem ter contribuído para o sucesso da primeira abordagem ao disponibilizar alguns pacotes ou configurações, eu sinceramente não sei.

Quando fiquei sem esperança de que qualquer abordagem funcionaria, considerei compilá-lo e instalá-lo a partir do código-fonte, iniciei esse esforço (instalei o essencial e criei o grupo de usuários e o usuário) e estava prestes a pegar o código-fonte quando Eu tropecei no pacote de debuffs que acabou sendo frutífero e foi a abordagem bem-sucedida que descrevi acima.

    
por Ahmed Moawad 02.05.2018 / 11:09
1

O MariaDB é um substituto totalmente compatível para o MySQL e está disponível nos repositórios padrão do Ubuntu. Pode ser instalado com:

sudo apt update
sudo apt install mariadb-server-10.0 mariadb-client-10.0

A configuração deve detectar todos os bancos de dados MySQL existentes e importá-los, mas por precaução, leia esta resposta e tenha um backup pronto.

Notas sobre o MariaDB

Embora a questão seja sobre MySQL , MariaDB

is an enhanced, drop-in replacement for MySQL

e é compatível com todos os aplicativos * que usam o MySQL. Ele escuta nas mesmas portas e todos os comandos são os mesmos (por exemplo, mysql , mysqldump , etc.).

* Ok, provavelmente você pode encontrar alguns aplicativos muito antigos que não funcionam com o MariaDB, mas as chances são muito pequenas.

    
por NerdOfLinux 07.05.2018 / 16:58
1

Talvez um pouco offtopic, mas a minha maneira preferida de resolver coisas como esta é usar o docker.

você pode instalar o docker e o docker-compose. Crie um arquivo docker-compose.yml, no exemplo /home/whatever/mysql-5.6 que tenha esta aparência.

services:

  db:
    image: mysql:5.6
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: example

e depois compor o docker -d -d

Alternativamente, você pode apenas instalar o docker-ce, e fazer um "dryrun" da imagem com o seguinte comando para apenas dar uma olhada.

docker run -it mysql:5.6 /bin/bash

Explicação completa do mysql Dockerfiles, aqui. link

    
por BD Bear 12.05.2018 / 15:15
1

Você pode fazer o download de & instalar pacotes debian do Mysql 5.6 manualmente a partir do repositório do mysql apt .

    
por Ketan Patel 11.05.2018 / 09:04