Temos 3 formas de instalar o MySQL nas distribuições Linux. As instalações podem ser feitas a partir do repositório(yum, apt-get, etc…), a partir do pacote já compilado para a sua distribuição(.rpm, .deb, etc…) ou ainda através dos binários do MySQL.
Nesse momento vamos ver como fazer a instalação a partir do repositório oficial do MySQL.
Vamos a versão mais recente do MySQL 5.7.

A primeira coisa a ser feita é acessar o site do MySQL e fazer o download do arquivo de configuração do repositório.

https://dev.mysql.com/downloads/repo/yum/

No meu caso é o CentOS 7.5 então vou fazer o download do “Red Hat Enterprise Linux 7 / Oracle Linux 7 (Architecture Independent), RPM Package”
Você pode fazer o download no seu computador e transferir para o servidor ou pode fazer o download direto no servidor, usando o wget, por exemplo.
Eu vou usar o wget, e para isso fiz esses passos:

  1. Acesse https://dev.mysql.com/downloads/repo/yum/
  2. Clique no botão download do “Red Hat Enterprise Linux 7 / Oracle Linux 7 (Architecture Independent), RPM Package”
  3. Vai aparecer uma página que pede para você fazer o login ou se cadastrar, não precisa fazer nada disso. Mais para baixo tem um link “No thanks, just start my download.”, clique com o botão direito do mouse e ai em “Copiar endereço do Link”, que tem essa url “https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm”
  4. No meu servidor usei o wget para fazer o download do arquivo assim “wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm” . O wget não vem instalado por padrão no CentOS 7.5, para instalar basta usar esse comando “yum install wget -y”

Pronto já temos o arquivo que vai configurar o repositório no servidor, veja que o arquivo de configuração do repositório é do MySQL 8.0, mas isso não é um problema, depois de instalar vamos alterar para ele instalar o MySQL 5.7.

Agora vamos instalar e configurar o repositório.
Para instalar você precisa ter poderes de root, então caso não esteja logado com o root, utilize o sudo.

rpm -Uvh mysql80-community-release-el7-1.noarch.rpm

Copy to Clipboard

 

Vamos verificar quais as versões do MySQL que estão disponíveis e qual está habilitada.

yum repolist all | grep mysql

Copy to Clipboard

 

Veja que está habilitada a versão mysql80-community/x86_64, mas nós queremos a versão mysql57-community/x86_64, para fazer isso execute esses comandos.

Para desabilitar a versão 8.0
yum-config-manager –disable mysql80-community

Para habilitar a versão 5.7
yum-config-manager –enable mysql57-community

Copy to Clipboard

 

Veja que agora está habilitada a versão mysql57-community/x86_64.

Agora vamos instalar o MySQL.

Para isso basta utilizar esse comando.

Copy to Clipboard

 

Ele vai perguntar se deseja instalar o mysql-server e todas as suas dependências. Veja na lista que os pacotes que estão sendo exibidos é da versão 5.7, e confirme a instalação.

Após concluir a instalação o serviço do MySQL não vai estar funcionando, mas antes de iniciar o serviço verifique quais pacotes do MySQL foram instalados.

 

Copy to Clipboard

 

Agora basta iniciar o serviço do MySQL com “service mysqld start” OU “systemctl start mysqld.service”

para verificar se o serviço subiu certo, use uma dessas opções:

 

Copy to Clipboard

 

OU

Copy to Clipboard

 

Apesar do serviço do MySQL estar rodando, para logar precisamos recuperar a senha do usuário root, quando o serviço é iniciado pela primeira vez, uma senha temporária é criada. Essa senha é gerada no log de error do MySQL Server. o path default do log de erros é em /var/log/mysqld.log, mas ele também pode ser verificado no arquivo de configuração do MySQL, /etc/my.cnf “log-error=/var/log/mysqld.log”.
Para ver a senha gerada, você pode abrir o arquivo de configuração vi /etc/my.cnf ou utilziar o comando grep ‘temporary password’ /var/log/mysqld.log

 

Copy to Clipboard

 

Como podemos ver a senha é f_ug&1=!C=*Y e com ela podemos acessar o MySQl com o usuário root e alterar a senha.

Copy to Clipboard

 

Pronto, o MySQL 5.7 está instalado e funcionando no CentOS.