Se ao tentar acessar o seu site WordPress você se deparou com a temida mensagem “Erro ao estabelecer uma conexão com o banco de dados”, saiba que você não está sozinho. Esse é um dos problemas mais comuns — e mais preocupantes — para quem administra um site WordPress.
Na maioria das vezes, esse erro aparece de forma súbita, sem aviso, e pode derrubar completamente o seu site, tanto no front-end quanto no wp-admin. Felizmente, com um pouco de conhecimento técnico e os passos certos, é possível diagnosticar a causa com precisão e restaurar o acesso ao seu site em poucos minutos.
Neste guia completo, vamos analisar as causas mais prováveis, mostrar como resolver o erro em diferentes situações e dar dicas para evitar que ele aconteça novamente.
Atenção: Este tutorial foi escrito para usuários iniciantes e intermediários, sem necessidade de conhecimento avançado em programação ou bases de dados.
⚠️ Causas mais comuns do erro de conexão no WordPress
O erro “Erro ao estabelecer uma conexão com o banco de dados” ocorre quando o WordPress não consegue se comunicar com o banco de dados MySQL responsável por armazenar todas as informações do site, como conteúdos, usuários, configurações e links permanentes.
A seguir, listamos os motivos mais frequentes que geram esse erro, cada um exigindo uma abordagem diferente na hora de resolver:
1. Credenciais incorretas no arquivo wp-config.php
O WordPress depende de quatro informações fundamentais para conectar-se ao banco de dados: nome do banco, nome do usuário, senha e servidor do banco (DB_HOST). Se uma dessas informações estiver errada — especialmente após uma migração ou alteração no painel de hospedagem — o erro de conexão aparecerá imediatamente.
2. Banco de dados fora do ar ou instável
Problemas no servidor MySQL, como sobrecarga, quedas ou manutenções mal agendadas, podem impedir que o site acesse os dados. Isso é comum em hospedagens compartilhadas com muitos sites no mesmo servidor.
3. Arquivos corrompidos ou ausentes
Se arquivos principais do WordPress foram excluídos ou corrompidos por atualizações mal feitas, ataques de malware ou alterações indevidas, o WordPress pode falhar ao carregar a conexão corretamente.
4. Problemas com permissões ou limite de conexões
Em alguns casos, o usuário do banco de dados perde permissão para acessar ou fazer consultas, ou o número máximo de conexões simultâneas ao banco (max_connections) é atingido, gerando o erro para novos acessos.
5. DNS mal configurado ou erro de DB_HOST
Embora raro, se o DB_HOST
estiver apontando para o endereço errado (ex: localhost
em vez de um IP ou subdomínio específico), o WordPress não encontrará o banco, mesmo com usuário e senha corretos.
🛠️ Verificando e corrigindo credenciais no wp-config.php
O wp-config.php
é o arquivo central de configuração do WordPress. É nele que estão definidas as credenciais de acesso ao banco de dados. Se alguma dessas informações estiver errada, seu site simplesmente não conseguirá se conectar ao banco, gerando o erro.
Veja como localizar e revisar esse arquivo:
1. Acesse os arquivos do seu site
- Você pode usar o cPanel (via Gerenciador de Arquivos) ou um cliente FTP como FileZilla.
- Navegue até a raiz da instalação do WordPress, geralmente em
/public_html/
.
2. Localize e edite o arquivo wp-config.php
- Clique com o botão direito sobre
wp-config.php
e selecione Editar. - Procure as seguintes linhas de código:
// Nome do banco de dados
define('DB_NAME', 'nomedobanco');
// Usuário do banco
define('DB_USER', 'usuariodobanco');
// Senha do banco
define('DB_PASSWORD', 'suasenha');
// Servidor do banco
define('DB_HOST', 'localhost');
3. Confirme os dados no painel da sua hospedagem
- Acesse o painel de controle do seu provedor (cPanel, Plesk, etc.).
- Vá até a seção de bancos de dados e confira:
- Nome exato do banco
- Usuário vinculado a ele
- Senha (pode ser necessário redefinir)
- Host do banco (geralmente
localhost
, mas pode ser diferente)
4. Atualize as informações no wp-config.php
Substitua os valores incorretos pelos dados atualizados. Salve o arquivo e tente acessar o site novamente.
Importante: nunca altere esse arquivo sem ter um backup recente do site. Pequenos erros de digitação podem gerar outros erros críticos.
🔎 Testar a conexão com o banco de dados via script PHP
Se, após revisar o wp-config.php
, você ainda não tem certeza se o problema é com as credenciais ou com o servidor MySQL, é possível fazer um teste direto de conexão criando um pequeno script PHP de diagnóstico.
1. Crie um novo arquivo PHP no servidor
- Acesse o Gerenciador de Arquivos do cPanel ou conecte-se via FTP.
- Na raiz do seu site (
/public_html
), crie um novo arquivo com o nometeste-conexao.php
.
2. Cole o seguinte código no arquivo
<?php
$servername = "localhost"; // ou o host correto
$username = "SEU_USUARIO";
$password = "SUA_SENHA";
$database = "SEU_BANCO";
$conn = new mysqli($servername, $username, $password, $database);
if ($conn->connect_error) {
die("Conexão falhou: " . $conn->connect_error);
}
echo "Conexão bem-sucedida!";
$conn->close();
?>
3. Edite os dados com as credenciais corretas
Substitua os valores de $username
, $password
e $database
pelas mesmas informações do wp-config.php
. Certifique-se também de ajustar o $servername
se o host do banco for diferente de localhost
.
4. Acesse o arquivo pelo navegador
Digite no navegador o endereço completo, como:
https://seudominio.com/teste-conexao.php
5. Interprete o resultado
- Se aparecer “Conexão bem-sucedida!”: suas credenciais estão corretas e o servidor do banco está ativo.
- Se surgir uma mensagem como “Conexão falhou: …” : anote o erro exibido. Ele pode indicar senha errada, banco inexistente ou servidor MySQL inativo.
6. Exclua o arquivo após o teste
Por segurança, exclua o teste-conexao.php
do servidor assim que terminar o diagnóstico.
Essa etapa é fundamental para descartar problemas no WordPress e focar exclusivamente na conexão com o banco.
🧩 Verificar se o banco de dados está ativo no painel da hospedagem
Mesmo com credenciais corretas, o WordPress pode apresentar erro de conexão se o servidor de banco de dados estiver inativo, corrompido ou mal configurado. Por isso, é essencial checar se o banco está funcionando corretamente dentro do painel da sua hospedagem.
1. Acesse o painel da sua hospedagem (cPanel ou similar)
- Entre no painel fornecido pela sua empresa de hospedagem (ex: cPanel, Plesk, DirectAdmin).
- Procure a seção chamada “Bancos de Dados” ou “MySQL Databases”.
2. Confirme se o banco de dados aparece na lista
Verifique se o banco listado em wp-config.php
existe e aparece corretamente. Caso não esteja na lista, isso indica que ele pode ter sido excluído acidentalmente ou ainda não foi criado.
3. Verifique se o usuário está vinculado ao banco
- Confirme se o usuário do banco está atribuído ao banco de dados com as permissões necessárias (ALL PRIVILEGES).
- Se o usuário não estiver vinculado, adicione-o usando a opção “Adicionar usuário ao banco” no cPanel.
4. Use o phpMyAdmin para testar o banco
- Abra o phpMyAdmin a partir do painel da hospedagem.
- Selecione o banco de dados na barra lateral esquerda.
- Se as tabelas aparecerem normalmente, o banco está funcionando.
- Se surgir um erro ao carregar o banco, como “não é possível conectar ao MySQL” ou “#1045 Access denied”, isso confirma que o problema está no servidor ou nas permissões do usuário.
5. Analise uso de recursos (limites)
Em hospedagens compartilhadas, o banco pode estar inacessível temporariamente por excesso de uso de CPU, RAM ou conexões simultâneas ao MySQL. Verifique se o painel exibe alertas de recursos ou entre em contato com o suporte técnico.
Conclusão: se o banco não estiver acessível mesmo pelo painel da hospedagem, é um indicativo claro de problema no servidor. Nesses casos, a solução pode depender do suporte técnico da empresa de hospedagem.
🔐 Corrigindo problemas de permissões e limites de conexão ao MySQL
Se o seu banco de dados está ativo e as credenciais estão corretas, mas o erro persiste, é hora de investigar possíveis restrições de permissões ou limitações no número de conexões simultâneas impostas pelo servidor MySQL.
1. Verifique permissões do usuário no banco
- No painel de hospedagem, vá até a seção “MySQL Databases”.
- Confirme se o usuário do banco está vinculado corretamente ao banco e com todas as permissões ativadas (ALL PRIVILEGES).
- Se necessário, remova a vinculação atual e adicione novamente o usuário ao banco, marcando todas as permissões.
2. Recrie o usuário e redefina a senha
- Em alguns casos, recriar o usuário resolve problemas de permissões silenciosos.
- Crie um novo usuário MySQL, com nova senha forte.
- Associe o novo usuário ao banco de dados com todas as permissões.
- Atualize o
wp-config.php
com as novas credenciais e teste o acesso.
3. Verifique limite de conexões simultâneas
Hospedagens compartilhadas costumam impor um limite no número de conexões simultâneas ao MySQL (variável max_connections
). Quando o limite é atingido, novas conexões são recusadas, gerando o erro.
- Verifique no painel se há relatórios sobre uso de recursos ou conexões MySQL ativas.
- Se você tiver acesso SSH, execute o comando:
SHOW STATUS LIKE 'Threads_connected';
para ver o número atual de conexões ativas.
- Considere otimizar plugins e eliminar processos que gerem consultas excessivas ao banco.
4. Fale com o suporte da hospedagem
Se você não conseguir verificar ou ajustar o limite de conexões sozinho, entre em contato com o suporte técnico da sua hospedagem e peça para:
- Confirmar se o usuário tem permissões corretas
- Verificar se há limite de conexões atingido
- Reiniciar o serviço MySQL, caso necessário
Dica: esse tipo de limitação é mais comum em planos de baixo custo. Sites com muito tráfego ou plugins pesados podem exigir upgrade de plano ou migração para hospedagem dedicada.
🧱 Corrigir arquivos corrompidos ou ausentes do WordPress
Erros de conexão com o banco de dados também podem ser causados por arquivos do WordPress corrompidos, incompletos ou modificados incorretamente. Isso pode ocorrer após uma atualização malsucedida, instalação de plugins maliciosos ou até infecções por malware.
Felizmente, você pode restaurar os arquivos essenciais do WordPress sem afetar o conteúdo, que permanece seguro no banco de dados.
1. Baixe uma versão limpa do WordPress
- Acesse o site oficial: wordpress.org/download
- Baixe a versão mais recente do WordPress em formato .zip
- Descompacte o arquivo no seu computador
2. Exclua apenas os arquivos corrompidos (com cautela)
Antes de subir os novos arquivos, exclua com cuidado as pastas e arquivos centrais da instalação, sem apagar os dados e plugins do site:
- Você pode deletar via FTP ou Gerenciador de Arquivos as seguintes pastas e arquivos:
/wp-admin
/wp-includes
- Arquivos soltos como
wp-login.php
,index.php
,wp-settings.php
, etc.
- Não exclua: a pasta
/wp-content
, owp-config.php
e.htaccess
se estiver configurado
3. Envie os arquivos originais do WordPress
- Com os arquivos extraídos no seu computador, envie todas as pastas e arquivos (exceto
/wp-content
) para o servidor - Sobrescreva os arquivos existentes
4. Teste o site
Após o envio, tente acessar novamente o seu site e o painel /wp-admin
. Se o erro estava ligado a arquivos corrompidos, o problema será resolvido sem perda de conteúdo ou configurações.
Nota: esse processo é seguro desde que você não remova a pasta wp-content
nem o wp-config.php
. Ainda assim, tenha sempre um backup completo antes de qualquer ação.
🌐 Verificar erros de DNS ou problemas com o parâmetro DB_HOST
O parâmetro DB_HOST
no arquivo wp-config.php
indica o endereço do servidor onde está o banco de dados MySQL. Se esse valor estiver incorreto, mesmo com usuário e senha corretos, o WordPress não conseguirá estabelecer conexão com o banco.
Por padrão, muitas hospedagens utilizam o valor localhost
, mas em servidores otimizados, cloud ou hospedagens com banco separado, o host pode ser um IP, subdomínio ou nome específico.
1. Verifique qual é o host do banco de dados fornecido pela hospedagem
- Acesse o painel da sua hospedagem (cPanel, Plesk, etc.)
- Procure a seção “MySQL Databases” ou “Informações do Servidor”
- Localize o campo DB Host (ou algo semelhante)
- Se o valor não for
localhost
, anote o valor real (por exemplo:mysql.seuhost.com
ou10.50.101.34
)
2. Atualize o parâmetro DB_HOST no wp-config.php
define('DB_HOST', 'mysql.seuhost.com');
Substitua localhost
pelo valor correto e salve o arquivo. Tente acessar novamente o site.
3. Teste a resolução DNS (caso esteja usando um domínio como host)
Se o banco estiver hospedado em um subdomínio (ex: mysql.dominio.com
), certifique-se de que o domínio está apontando corretamente para o servidor DNS. Um erro de DNS pode impedir a resolução do host.
Você pode verificar se o domínio está resolvendo corretamente com o comando (via terminal ou prompt de comando):
ping mysql.dominio.com
4. Utilize o script de teste de conexão com novo DB_HOST
Reutilize o arquivo teste-conexao.php
(mencionado anteriormente), alterando o valor do $servername
para o novo host. Isso ajuda a isolar se o problema está mesmo no apontamento do host.
5. Consulte a hospedagem em caso de dúvida
Se você não encontrar o valor correto ou tiver dúvidas sobre como o servidor está configurado, entre em contato com o suporte da sua hospedagem e solicite o host exato para conexão com o banco de dados MySQL do seu plano.
Conclusão: Um erro no DB_HOST pode ser sutil e difícil de perceber, mas é essencial para o WordPress localizar corretamente o servidor de banco de dados. Verificar esse parâmetro é crucial, especialmente após migrações ou mudanças de servidor.
🆘 Quando nada funciona: restaurar backup ou acionar o suporte técnico
Se você seguiu todos os passos anteriores — verificou credenciais, testou a conexão, confirmou o funcionamento do banco, corrigiu permissões e reenvio de arquivos — e mesmo assim o erro “Erro ao estabelecer uma conexão com o banco de dados” persiste, é hora de considerar medidas mais profundas.
1. Restaure um backup funcional do site
- Se você tem backups automáticos configurados pela hospedagem, acesse o painel e procure a seção de restauração de site.
- Escolha uma versão do site que estava funcionando corretamente (preferencialmente do dia anterior ao erro).
- Restaure tanto os arquivos quanto o banco de dados, se possível, para garantir consistência.
Importante: essa ação pode sobrescrever alterações recentes feitas no site. Use com cautela.
2. Solicite suporte técnico especializado
Se você não se sente seguro para restaurar o backup ou não consegue identificar o problema por conta própria, entre em contato com o suporte da sua hospedagem.
- Descreva o erro com detalhes: quando surgiu, o que já tentou, e se há mensagens específicas
- Peça para o suporte:
- Verificar status do servidor MySQL
- Confirmar se há falhas na conta ou banco corrompido
- Revisar permissões do usuário MySQL
3. Evite “soluções mágicas” com plugins ou ferramentas externas
Não instale plugins de reparo automático ou scripts de terceiros quando o acesso ao banco falha. Essas soluções podem piorar a situação ou comprometer a integridade dos dados.
4. Documente a ocorrência para evitar futuros problemas
Após resolver o erro, documente os passos que funcionaram e faça um plano preventivo:
- Ative backups automáticos diários
- Evite alterações no wp-config.php sem controle de versão
- Reduza o número de plugins que interagem com o banco
- Monitore o uso de recursos do servidor
Conclusão: Erros de conexão com o banco são sérios, mas quase sempre reversíveis com análise técnica e ações corretas. Contar com um bom suporte de hospedagem e manter backups atualizados são as maiores garantias de segurança para o seu site WordPress.