Guia de tecnologias

Instalar e configurar MySQL 5.7 no CentOS 7 e Ubuntu 16.04

6 min read Databases Atualizado 08 Oct 2025
Instalar MySQL 5.7 no CentOS 7 e Ubuntu 16.04
Instalar MySQL 5.7 no CentOS 7 e Ubuntu 16.04

Visão geral

MySQL é um sistema de gestão de banco de dados relacional (RDBMS) de código aberto mantido pela Oracle. O código-fonte é publicado sob GPL; existe também uma edição paga com recursos adicionais. MySQL é comumente usado em pilhas LAMP/LEMP como solução de armazenamento de dados.

Neste tutorial vamos:

  1. Adicionar o repositório oficial do MySQL.
  2. Instalar o MySQL 5.7 (versão estável usada aqui).
  3. Habilitar o serviço para iniciar automaticamente no boot.
  4. Redefinir/definir a senha root quando necessário.
  5. Testar criando um banco de dados e um usuário.

Importante: os comandos deste guia precisam de privilégios de root ou sudo. Execute-os em uma sessão segura (SSH) e faça backup antes de alterar servidores em produção.

Pré-requisitos

  • Acesso root ou usuário com sudo.
  • CentOS 7 ou Ubuntu 16.04 atualizados.
  • Conexão de rede para baixar pacotes.
  • Espaço em disco e memória compatíveis com o seu workload.

Passo 1 — Adicionar o novo repositório

O MySQL fornece repositórios rpm e deb que contêm as versões estáveis mais recentes. Adicione o repositório oficial ao sistema.

Para CentOS 7 execute:

yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

Quando solicitado, digite ‘y’ e pressione Enter para confirmar.

No Ubuntu baixe e instale o pacote do repositório e atualize a lista de pacotes:

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

dpkg -i mysql-apt-config_0.8.3-1_all.deb

apt-get update

Durante a instalação do pacote de configuração no Ubuntu, você verá um diálogo perguntando a versão do MySQL a instalar e ferramentas adicionais. A opção padrão normalmente é MySQL 5.7 — pressione Enter em ‘Ok’ para aceitar.

Captura de tela: diálogo de adição do repositório MySQL no Ubuntu

Nota: manter o repositório oficial facilita atualizações e correções de segurança.

Passo 2 — Instalar MySQL 5.7

Com o repositório disponível, instale o pacote do servidor chamado mysql-community-server.

CentOS 7:

yum -y install mysql-community-server

Ubuntu 16.04:

apt-get install -y mysql-community-server

No Ubuntu o instalador pedirá que você defina uma senha para root durante a instalação. Digite uma senha forte e confirme.

Retype your password.

MySQL 5.7 estará instalado após a conclusão.

Passo 3 — Iniciar o MySQL e habilitar no boot

Inicie o serviço e ative-o para iniciar no boot com systemd.

CentOS (serviço mysqld):

systemctl start mysqld
systemctl enable mysqld

Ubuntu (serviço mysql):

systemctl start mysql
systemctl enable mysql

Verifique que o MySQL está escutando na porta TCP 3306 (comando mostrado é genérico):

netstat -plntu

Verifique se o serviço está habilitado para iniciar automaticamente:

CentOS:

systemctl is-enabled mysqld

Captura de tela: serviço MySQL ativado no CentOS

Ubuntu:

systemctl is-enabled mysql

Captura de tela: serviço MySQL ativado no Ubuntu

O resultado ‘enabled’ indica que o serviço está configurado para iniciar no boot.

Passo 4 — Configurar a senha root

No Ubuntu a senha root é normalmente definida durante a instalação; no CentOS 7, ao iniciar o mysqld pela primeira vez, o servidor gera uma senha temporária e a registra no arquivo de log.

Encontre a senha temporária no CentOS 7:

grep 'temporary' /var/log/mysqld.log

Conecte-se ao shell do MySQL usando a senha temporária:

mysql -u root -p
# DIGITE_A_SENHA_TEMPORÁRIA

Substitua a senha temporária por uma nova senha forte (exemplo usado abaixo; escolha a sua):

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Newhakase-labs123@';
flush privileges;

Após executar os comandos acima, a senha root foi alterada.

Captura de tela: alteração da senha root do MySQL no Linux

Importante: guarde a senha root em um cofre de senhas ou sistema de gerenciamento seguro. Você pode repetir essa alteração a qualquer momento.

Passo 5 — Teste: criar banco de dados e usuário

Conecte-se como root e crie um banco e um usuário de teste:

mysql -u root -p
# DIGITE A NOVA SENHA: Newhakase-labs123@

create database hakaselabs;
create user hakase@localhost identified by 'Hakase123@';
grant all privileges on hakaselabs.* to hakase@localhost identified by 'Hakase123@';
flush privileges;

Saia e reconecte com o novo usuário:

mysql -u hakase -p
# DIGITE A SENHA: Hakase123@

show databases;

Você verá o banco de dados ‘hakaselabs’ listado.

Captura de tela: conexão com usuário criado e listagem de bancos

Parabéns — o MySQL 5.7 está instalado, configurado e testado.

Cheatsheet de comandos essenciais

  • Instalar repositório (CentOS):
yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
  • Atualizar lista (Ubuntu):
apt-get update
  • Instalar servidor:
yum -y install mysql-community-server
apt-get install -y mysql-community-server
  • Iniciar e habilitar serviço:
systemctl start mysqld   # CentOS
systemctl enable mysqld

systemctl start mysql    # Ubuntu
systemctl enable mysql
  • Encontrar senha temporária (CentOS):
grep 'temporary' /var/log/mysqld.log
  • Redefinir senha root (MySQL 5.7):
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NovaSenhaSegura!';
flush privileges;
  • Criar banco/usuário e dar permissões:
create database meu_db;
create user meu_user@localhost identified by 'Senha!23';
grant all privileges on meu_db.* to meu_user@localhost;
flush privileges;

Segurança e hardening (boas práticas)

  • Use senhas fortes e cofre de senhas para credenciais administrativas.
  • Desabilite acessos remotos para root: verifique a tabela mysql.user e evite ‘root’@’%’ (mantenha apenas ‘root’@’localhost’).
  • Habilite TLS para conexões remotas.
  • Atualize regularmente o pacote do servidor e dos clientes via repositório oficial.
  • Configure backups automáticos (mysqldump, mysqlpump, ou ferramentas de snapshot do storage).
  • Limite usuários com privilégios mínimos necessários.
  • Habilite log de auditoria quando necessário e monitore tentativas de login falhas.

Solução de problemas comuns

  • Erro: “Can’t connect to local MySQL server through socket” — verifique se o serviço está ativo (systemctl status mysql/mysqld) e se o socket padrão (/var/run/mysqld/mysqld.sock ou /var/lib/mysql/mysql.sock) existe.
  • Erro de autenticação após atualizar MySQL — verifique o plugin de autenticação (caching_sha2_password vs mysql_native_password) e ajuste se necessário.
  • Porta 3306 ocupada — use netstat ou ss para identificar o processo que usa a porta.
  • Pacote não encontrado — confirme que o repositório foi instalado corretamente e que a arquitetura do pacote é compatível.

Checklist por função (pré-produção)

  • Administrador de sistema:

    • Repositório oficial adicionado e validado.
    • Serviço configurado para iniciar no boot.
    • Backups agendados e testados.
  • DBA:

    • Usuários e privilégios aplicados com princípio do mínimo privilégio.
    • Plano de manutenção (tunning, índices, purga de logs).
  • Segurança/Compliance:

    • Senhas fortes armazenadas em cofre.
    • TLS habilitado para conexões remotas.

Critérios de aceitação

  • MySQL 5.7 instalado a partir do repositório oficial.
  • Serviço inicia automaticamente no boot e responde na porta 3306.
  • Senha root foi definida/alterada com sucesso.
  • É possível criar um banco e um usuário, e conectar com esse usuário.

Casos de teste / Aceitação

  1. Instalação sem erros: executar instalação em uma VM limpa e verificar saída dos comandos.
  2. Inicialização: reiniciar a VM e confirmar que o service está ativo automaticamente.
  3. Autenticação: logar como root e como usuário criado localmente.
  4. Permissões: confirmar que o usuário tem acesso apenas ao banco designado.

Migração e alternativas

  • Alternativa a MySQL 5.7: MariaDB (fork compatível) e versões mais novas do MySQL (8.x) — verificar compatibilidade de aplicações antes de migrar.
  • Para ambientes que exigem recursos de replicação avançada, avalie MySQL Group Replication ou soluções gerenciadas (RDS, Cloud SQL).

Notas de compatibilidade

  • Este guia foi escrito para CentOS 7 e Ubuntu 16.04. Em distribuições mais recentes (CentOS 8/Stream, Ubuntu 18.04/20.04) os pacotes e nomes de serviço podem diferir; ajuste conforme necessário.

Resumo

  • Adicione o repositório oficial do MySQL.
  • Instale mysql-community-server via yum/apt.
  • Inicie e habilite o serviço com systemd.
  • Defina ou redefina a senha root conforme necessário.
  • Crie um banco e um usuário para testar a instalação.

Perguntas frequentes

Q: Posso usar estes passos para MySQL 8.0?
A: Alguns passos são semelhantes, mas MySQL 8.0 introduz diferenças (plugins de autenticação, configurações padrão). Use o repositório/configuração específica do 8.0.

Q: Onde encontro a senha temporária no CentOS?
A: No arquivo de log /var/log/mysqld.log; procure a linha que contém ‘temporary password’.

Q: Preciso abrir a porta 3306 no firewall?
A: Sim, apenas se houver clientes remotos que precisem se conectar. Em produção, prefira conexões via túnel VPN/SSH ou habilite TLS e restrinja IPs.

Referência

https://dev.mysql.com/doc/refman/5.7/en/linux-installation.html

Autor
Edição

Materiais semelhantes

Instalar e usar Podman no Debian 11
Containers

Instalar e usar Podman no Debian 11

Apt‑pinning no Debian: guia prático
Administração de sistemas

Apt‑pinning no Debian: guia prático

Injete FSR 4 com OptiScaler em qualquer jogo
Tecnologia

Injete FSR 4 com OptiScaler em qualquer jogo

DansGuardian e Squid com NTLM no Debian Etch
Infraestrutura

DansGuardian e Squid com NTLM no Debian Etch

Corrigir erro de instalação no Android
Android

Corrigir erro de instalação no Android

KNetAttach: Pastas de Rede remota no KDE
KDE

KNetAttach: Pastas de Rede remota no KDE