Erro 'Too many connections' no MySQL: o que causa e como evitar imprimir

  • 0

Erro "Too many connections" no MySQL: o que causa e como evitar

Oi! Aqui é a Sensei da GeHost 🧑‍🏫 Se o seu site (ou loja) começou a mostrar uma tela de erro parecida com "Too many connections" ou "Error establishing a database connection", relaxa: não é o fim do mundo, e na maioria das vezes dá pra resolver rapidinho. Vamos entender juntos o que é isso e, principalmente, como evitar que aconteça de novo.

O que significa esse erro?

Todo banco de dados MySQL tem um limite de conexões simultâneas que ele consegue atender ao mesmo tempo — isso é normal e existe em qualquer servidor de banco de dados, não é uma limitação exclusiva do seu site. Quando o número de conexões abertas ao mesmo tempo ultrapassa esse limite, o MySQL passa a recusar novas conexões e exibe justamente o erro "Too many connections".

Ou seja: não é que o seu banco "quebrou" — é que, num determinado momento, mais gente/processos tentaram falar com ele do que ele conseguia atender ao mesmo tempo.

As causas mais comuns

  • Pico de acessos: muita gente visitando o site ao mesmo tempo (uma campanha, uma promoção, uma matéria viralizando).
  • Plugins ou scripts mal otimizados: alguns plugins (principalmente em WordPress/WooCommerce) abrem conexões com o banco e não fecham direito, deixando "lixo" acumulado.
  • Consultas (queries) muito pesadas ou lentas: uma consulta que demora muito para responder "segura" a conexão aberta por mais tempo, travando espaço para as próximas.
  • Robôs e crawlers em excesso: bots de busca ou até tentativas de acesso indevido gerando muitas requisições ao mesmo tempo.
  • Falta de cache: sem um sistema de cache, toda visita ao site gera uma nova consulta ao banco — em vez de reaproveitar uma página já pronta.
Dica da Sensei: na grande maioria dos casos, esse erro é pontual — dura só alguns segundos ou minutos, no momento do pico. Se ele for aparecendo com frequência, é sinal de que vale a pena investigar a causa (e não só esperar passar).

Como evitar — passo a passo

  1. Instale um plugin de cache (se seu site for WordPress). Isso reduz MUITO a quantidade de vezes que o site precisa "conversar" com o banco de dados, porque as páginas ficam prontas em cache e não geram nova consulta a cada visita.
  2. Revise seus plugins e temas. Desative e remova aqueles que você não usa mais. Quanto menos plugins ativos, menos conexões abertas ao mesmo tempo.
  3. Verifique se algum plugin específico está causando o problema. Se o erro começou a aparecer logo depois de instalar ou atualizar algo, esse é o primeiro suspeito.
  4. Otimize as tabelas do seu banco de dados periodicamente. Você pode acompanhar seus bancos direto pelo cPanel, na área "Bancos de Dados MySQL": Tela de Bancos de Dados MySQL no cPanel
  5. Acompanhe suas estatísticas de acesso. Se o erro costuma aparecer em horários de pico, isso já é uma pista importante — dá pra ver o volume de visitas na área de métricas do painel: Tela de métricas e estatísticas de visitantes no cPanel
  6. Se o seu site cresceu (mais produtos, mais tráfego, mais pedidos), pode ser a hora de migrar para um plano com mais capacidade. A GeHost tem os planos Econômico, Básico, Médio e Plus — cada um pensado para um estágio diferente do seu negócio. Dá uma olhada no que faz sentido pra você direto no painel.gehost.com.br, ou fala com a gente que te ajudamos a decidir.

E se eu não conseguir resolver sozinho?

Sem problema nenhum! Esse tipo de diagnóstico às vezes precisa de um olhar mais técnico (analisar logs, identificar qual processo está segurando as conexões, etc). Chama o suporte da GeHost pelo painel (painel.gehost.com.br) contando quando o erro apareceu e o que você estava fazendo no momento — isso já ajuda demais a gente a te dar um diagnóstico certeiro.

Resumindo: "Too many connections" quase sempre é sintoma de pico de acesso ou de algo (plugin/consulta) segurando conexões demais. Cache, boa manutenção dos plugins e, se o site cresceu, um plano compatível com esse crescimento resolvem a maioria dos casos. 💙

Esta resposta lhe foi útil?

« Retornar