DBAtlas · Atlas de operações de banco de dados

Instalação do MySQL em servidor único (pronta para produção)

MySQLNível: InicianteDuração: 30–45 min

Instala do zero, a partir do repositório oficial, um único servidor MySQL 8.4 LTS (ou 8.0) pronto para produção: diretórios separados para dados, binlog e logs, my.cnf calculado conforme RAM/CPU/tipo de disco, GTID e período de retenção dos binlogs, slow query log, SELinux/AppArmor, acesso root restrito e usuário da aplicação. No fim você tem uma instância verificada e com o primeiro backup feito; os guias de replicação, InnoDB Cluster, backup e segurança partem desta instalação.

Topologia: 1 servidor

Antes de começar

  • O servidor roda um sistema operacional suportado e atualizado; fuso horário e NTP (chrony) corretos.
  • RAM e CPU iguais aos valores do formulário (o my.cnf é calculado a partir deles: buffer pool … MB).
  • Há disco/LV montado para …, … e … (persistente no fstab), o sistema de arquivos é XFS ou ext4 e há espaço livre suficiente. Os binlogs serão mantidos por … dias; reserve pelo menos … vezes o seu volume diário de gravação.
  • O hostname … está configurado e resolve para o próprio IP; a rede da aplicação (…) é alcançável.
  • O servidor acessa repo.mysql.com via HTTPS ou há um mirror interno configurado.
  • A porta … (e a porta do X Protocol …) está livre.
  • Não há MariaDB nem o MySQL do próprio sistema operacional instalado no servidor (conflita com o MySQL oficial).
  • A senha do usuário da aplicação está pronta… (na família RHEL o validate_password vem ativado: no mínimo 8 caracteres, maiúsculas/minúsculas, dígito e caractere especial)…. A senha será solicitada durante a instalação sem aparecer na tela; ela não deve conter ' nem \.
  • Você está logado com privilégios de root ou sudo; a janela de manutenção e um plano de retorno (snapshot do servidor) estão prontos.

Fases do guia

  • Preparação do sistema operacional — Hostname e atualização do sistema · Parâmetros do kernel (sysctl) · Aplicar as configurações do sysctl · Desativar Transparent Huge Pages
  • Instalação do software MySQL — Desativar o módulo MySQL do sistema operacional · Adicionar o repositório oficial do MySQL · Instalar o software do servidor MySQL · Definir o repositório APT oficial do MySQL · Instalar o software do servidor MySQL
  • Diretórios e configuração — Criar os diretórios e definir a propriedade · Gravar o my.cnf · Aumentar o limite de arquivos abertos (systemd) · Recarregar a configuração do systemd · Definir os rótulos do SELinux · Registrar os novos diretórios no AppArmor …
  • Iniciar o serviço — Habilitar e iniciar o serviço · Limpar o antigo diretório de dados padrão
  • Acesso root e segurança — Encontrar a senha temporária do root · Passar o root para auth_socket · Definir a senha do root · Guardar os dados de login do root (mysql_config_editor) · Remover as contas padrão e o banco de dados de teste · Componente de política de senhas (validate_password)
  • Banco de dados e usuário da aplicação — Criar o banco de dados e o usuário da aplicação
  • Acesso de rede — Abrir a porta no firewall
  • Verificação — Verificar se as configurações foram aplicadas · Verificar o error log · Teste de conexão remota
  • Pós-instalação — Fazer o primeiro backup lógico · Conectar o monitoramento
Abrir o plano passo a passo para o seu ambiente →