Como Interpretar o Slow Query Log do MySQL para Achar Consultas Lentas
Olá, querido cliente da GeHost! 👋
Se você está aqui, é porque quer entender melhor como o seu banco de dados está se comportando — e isso é ótimo! Como seu Sensei da GeHost, vou te guiar com calma, paciência e um toque de carinho para transformar um assunto complexo em algo simples, claro e muito útil.
O que é o Slow Query Log?
Imagine o MySQL como um atendente superocupado em um atendimento de banco. Ele atende milhares de pedidos por minuto, mas, às vezes, algum pedido leva mais tempo do que deveria.
O Slow Query Log é como um diário dele: ele anota todas as consultas (pedidos) que levam mais tempo do que o permitido — ou seja, as que estão "lentas".
Esse log é uma ferramenta poderosa para descobrir quais consultas estão atrapalhando o desempenho do seu site ou sistema.
Passo a Passo: Como Acessar e Interpretar o Slow Query Log
-
Entre no painel da GeHost
Abra o seu navegador e vá para https://painel.gehost.com.br. Faça login com suas credenciais.
-
Localize o MySQL no painel
No painel, procure pela seção Bancos de Dados MySQL (geralmente no grupo "Banco de Dados").
-
Ative o Slow Query Log (se ainda não estiver ativo)
Por padrão, o log pode não estar ativado. Se precisar, você pode habilitá-lo via phpMyAdmin ou com ajuda do suporte. Importante: o acesso direto ao arquivo do log geralmente exige permissão de administrador (root), que não está disponível nos planos compartilhados da GeHost.
Dica do Sensei: Em planos compartilhados (como Econômico, Básico, Médio, Plus), o acesso direto ao arquivo do log é limitado. Se precisar analisar o log, o ideal é pedir ajuda ao nosso suporte — eles podem te ajudar a identificar consultas lentas sem precisar tocar no arquivo diretamente.
-
Entenda o que o log mostra
Quando o log está ativo, ele registra linhas como esta:
# Time: 2024-07-19T14:23:45.123456Z # User@Host: user[username] @ localhost [127.0.0.1] # Query_time: 2.345 Lock_time: 0.001 Rows_sent: 15 Rows_examined: 1200 SET timestamp=1721452425; SELECT * FROM usuarios WHERE nome LIKE '%João%';Essa linha diz:
- Tempo da consulta: 2,345 segundos — isso já é considerado lento para uma operação simples.
- Linhas examinadas: 1.200 — ou seja, o MySQL teve que olhar muitas linhas para encontrar o que queria.
- Consulta em si: `SELECT * FROM usuarios WHERE nome LIKE '%João%'` — está buscando nomes que contenham "João", mas sem usar um índice.
-
Identifique o problema
As consultas lentas geralmente têm um dos seguintes problemas:
- Usam
LIKE '%palavra%'sem índice — isso força o MySQL a ler tudo. - Buscam muitas colunas com
SELECT *— melhor usar apenas as colunas necessárias. - Executam joins complexos sem índices nos campos relacionados.
- Buscam dados em tabelas muito grandes sem filtrar corretamente.
Se você vir uma consulta assim, é sinal de que ela pode ser otimizada.
- Usam
-
Como melhorar?
Veja um exemplo de melhoria:
-- Antes (lenta): SELECT * FROM usuarios WHERE nome LIKE '%João%'; -- Depois (rápida): SELECT id, nome, email FROM usuarios WHERE nome LIKE 'João%' AND status = 'ativo' ORDER BY nome;Veja só: com um índice na coluna
nomee um filtro mais preciso, a consulta fica muito mais rápida. -
Quer ajuda com isso?
Se achar que seu site está lento e suspeita que é por causa do banco de dados, não se preocupe!
Entre em contato com o nosso suporte da GeHost — eles podem analisar o log, identificar as consultas mais lentas e te orientar sobre como otimizar.
Lembre-se: seu site é como um jardim. Quando algo cresce sem controle, ele precisa de um bom cuidado. E a GeHost está aqui para ajudar você a cuidar dele com carinho.
Dica Final do Sensei
Todo mundo começa devagar. Se hoje você não entende tudo sobre MySQL, não tem problema. O importante é querer aprender — e você já está no caminho certo.
Se precisar, abra um chamado no painel com o assunto: "Análise de consultas lentas no MySQL". Nossa equipe vai te ajudar com todo o carinho do mundo.
Até a próxima, com muito respeito e energia positiva! 🌿
GeHost — seu parceiro de confiança desde 2015.
Grupo: G e Soluções e Eventos LTDA (CNPJ: 46.647.904/0001-04)