O “erro ao estabelecer uma conexão com o banco de dados” é provavelmente um dos erros mais comuns que os usuários do WordPress podem encontrar. Ele está intimamente ligado à tela branca da morte (WSOD). Este erro significa que seu site não está mais se comunicando ou tem acesso ao seu banco de dados WordPress; assim, seu site inteiro vai abaixo.

Você deve resolver este erro imediatamente, pois isto pode afetar diretamente suas vendas, tráfego e análises.

Mas não se preocupe, hoje vamos discutir alguns cenários comuns que causam este erro e algumas maneiras fáceis de colocar seu site de volta em funcionamento num piscar de olhos.

O que é “Erro ao estabelecer uma conexão com o banco de dados”?

Todas as informações em seu site WordPress, tais como dados de posts, dados de página, meta informações, configurações de plugin, informações de login, etc. são armazenadas em seu banco de dados MySQL. Os únicos dados não armazenados lá são conteúdos de mídia como imagens e seus arquivos tema/plugin/core como index.php, wp-login.php, etc. Quando alguém visita seu site, o PHP executa o código na página, consulta as informações do banco de dados e então as exibe para o visitante em seu navegador.

Este erro pode estar ligado à Tela Branca da Morte como um dos erros mais assustadores que você pode encontrar 💀 Mas este guia está aqui para ajudar 💪Clique para Tweetar

Se isto não estiver funcionando corretamente, você fica com a mensagem “erro ao estabelecer uma conexão com o banco de dados”, como visto abaixo. A página inteira está em branco porque nenhum dado pode ser recuperado para renderizar a página, já que a conexão não está funcionando corretamente. Isto não só quebra o frontend do seu site, mas também impedirá que você acesse o seu painel de controle do WordPress.

Mensagem "Erro ao estabelecer uma conexão com o banco de dados" em Chrome
Mensagem “Erro ao estabelecer uma conexão com o banco de dados” em Chrome

No entanto, os visitantes podem não ver este erro no frontend de imediato. Isso porque o seu site provavelmente ainda está servindo a partir do cache até que ele expire. Por exemplo, em Kinsta, todos os sites WordPress estão em cache por padrão por uma hora. Portanto, se um site ainda estiver servindo a partir do cache, pode parecer aceitável para um visitante.

Na Kinsta, nossa equipe de suporte pode aumentar a duração do seu cache para, digamos, uma hora ou até mesmo uma semana, se você quiser. Se você tem um site que não muda com muita frequência, isso pode aumentar o desempenho do seu site, já que ele não precisa pegar novos arquivos com a mesma frequência depois que o cache expirar. E em casos como os acima, o frontend do site na maioria dos casos (a menos que você tenha um script ou parte do seu site quebrando o cache) permaneceria acordado por muito mais tempo.

Quando os visitantes tentam acessar seu site enquanto este erro está acontecendo, ele irá gerar um código de status 500 HTTP em seus logs. Este mesmo código de status aparece com um “erro interno do servidor” Isso significa que algo deu errado no servidor, e o recurso solicitado não foi entregue. Quando tudo estiver funcionando corretamente, seu site irá gerar um código de status de 200 HTTP, o que significa que tudo está bem.

"Erro ao estabelecer uma conexão com o banco de dados" 500 erro
“Erro ao estabelecer uma conexão com o banco de dados” 500 erro

Se você é um cliente Kinsta, você também pode olhar para o relatório de erros 500 de quebra no MyKinsta analytics para ver se é algo que tem sido um problema recorrente.

Erros 500 de repartição
Erros 500 de repartição

Cenários comuns que causam este erro

Então por que exatamente isso acontece? Bem, aqui estão algumas razões comuns abaixo. E não se preocupe, vamos detalhar cada uma delas para que você possa saber como corrigir. Tipicamente você pode resolver este erro em menos de 15 minutos.

  • A questão mais comum é que as credenciais de login do seu banco de dados estão incorretas. Seu site WordPress usa informações de login separadas para se conectar ao seu banco de dados MySQL.
  • Seu banco de dados está corrompido. Com tantas partes móveis com temas, plugins e usuários constantemente apagando-os e instalando-os, às vezes os bancos de dados são corrompidos. Isto pode ser devido a uma tabela ausente ou individualmente corrompida, ou talvez alguma informação tenha sido apagada por acidente.
  • Você pode ter arquivos corrompidos em sua instalação do WordPress. Isto pode até acontecer às vezes devido a hackers.
  • Problemas com o seu servidor de banco de dados. Várias coisas podem estar erradas no servidor web, tais como sobrecarregar o banco de dados de um pico de tráfego ou não responder de muitas conexões simultâneas. Isto é comum com hosts compartilhados, pois eles utilizam os mesmos recursos para muitos usuários nos mesmos servidores.
  • Um pico de tráfego. Dependendo do host web que você usa, seu servidor pode ser incapaz de lidar com muitas conexões simultâneas com o banco de dados. Um aumento no tráfego pode levar a problemas temporários com o banco de dados.

Como corrigir o “Erro ao estabelecer uma conexão com o banco de dados”

Antes de solucionar o erro, recomendamos fazer um backup do site WordPress. Muitas das recomendações abaixo envolvem manipulação de informações em seu banco de dados, então você não quer piorar as coisas. Você deve sempre fazer um backup antes de tentar corrigir as coisas no seu site WordPress, não importa o quão experiente em tecnologia você pensa que é.

Você pode usar um popular plugin de backup do WordPress, como VaultPress ou WP Time Capsule para fazer o backup de seus arquivos e banco de dados.

Se você é um usuário Kinsta, você pode tirar vantagem do nosso recurso de backup com um clique. Clique no seu site WordPress no MyKinsta, clique em “Backups” e depois em “Back up now”.

Backup do site WordPress
Backup do site WordPress

Você então também tem a opção de restaurar um backup para a produção ou teste. Ou você pode fazer backup manualmente do seu banco de dados MySQL usando o phpMyAdmin. Uma vez que você tenha um backup bem sucedido, é hora de resolver os problemas de conexão do seu banco de dados.

1. Verifique as credenciais de login do seu banco de dados

A primeira coisa a fazer é verificar se as credenciais de login do seu banco de dados estão corretas. Esta é de longe a razão mais comum pela qual a mensagem “erro ao estabelecer uma conexão com o banco de dados” ocorre. Especialmente logo após as pessoas migrarem para um novo provedor de hospedagem. Os detalhes da conexão do seu site WordPress são armazenados no arquivo wp-config.php, que geralmente está localizado na raiz do seu site WordPress.

Ele contém quatro informações importantes que devem estar corretas para que a conexão ocorra com sucesso.

Nome do Banco de Dados

// ** MySQL settings ** //

/** The name of the database for WordPress */

define('DB_NAME', 'xxxxxx');

Nome de usuário do banco de dados MySQL

/** MySQL database username */

define('DB_USER', 'xxxxxx');

Senha do banco de dados MySQL

/** MySQL database password */

define('DB_PASSWORD', 'xxxxxxxxx');

MySQL hostname (servidor)

/** MySQL hostname */

define('DB_HOST', 'localhost');

Para acessar seu arquivo wp-config.php, você pode se conectar ao seu site via SFTP e navegar até a raiz do seu site. Ou, se você estiver usando o cPanel, você pode clicar em “File Manager”, navegar até a raiz do seu site, e clicar com o botão direito para editar o arquivo.

Gerenciador de arquivos cPanel
Gerenciador de arquivos cPanel

Aqui está um exemplo abaixo de como o arquivo se parece quando aberto.

Credenciais wp-config.php
Credenciais wp-config.php

Agora você precisa verificar seus valores atuais em relação aos do seu servidor para garantir que eles estejam corretos. Siga as instruções abaixo para usuários do cPanel e Kinsta.

Verificando as credenciais do banco de dados no cPanel

A primeira coisa a ser verificada é o nome do banco de dados. Para fazer isso, você deve entrar no phpMyAdmin no cPanel sob a seção Bancos de Dados.

cPanel phpMyAdmin
cPanel phpMyAdmin

Você deve ver o nome do seu banco de dados na parte inferior à esquerda. Você pode ignorar o banco de dados “information_schema”, pois este é algo usado pelo host. Você então vai querer comparar esse nome com o valor DB_NAME em seu arquivo wp-config.php. Se eles corresponderem, então este não é o problema. Se eles não corresponderem, você precisa atualizar seu arquivo wp-config.php.

cPanel nome do banco de dados
cPanel nome do banco de dados

Você também pode verificar se este é o banco de dados correto, assegurando que ele contenha a URL do seu site WordPress. Para fazer isso, clique no banco de dados e depois clique na tabela wp_options (isso pode ser ligeiramente diferente para fins de segurança, como wpxx_options). No topo da tabela, você verá os valores para a URL e o nome do seu site. Se estes corresponderem ao seu site atual, você pode ter certeza de que você está no lugar certo.

Verificar URL do site em phpMyAdmin
Verificar URL do site em phpMyAdmin

Se o nome do seu banco de dados já estava correto e você ainda receber a mensagem “erro ao estabelecer uma conexão com o banco de dados”, você também vai querer verificar seu nome de usuário e senha. Para fazer isso, você precisará criar um novo arquivo PHP no diretório raiz do seu site WordPress e inserir o seguinte código. Você pode nomeá-lo como você quiser, como checkdb.php. Mude os valores de db_user e db_password com aqueles do seu arquivo wp-config.php.

<?php

$test = mysqli_connect('localhost', 'db_user', 'db_password');

if (!$test) {

die('MySQL Error: ' . mysqli_error());

}

echo 'Database connection is working properly!';

mysqli_close($testConnection);

Então navegue pelo arquivo em seu site WordPress: https://yourdomain.com/checkdb.php. Se você receber um “MySQL Error: Acesso negado”, então você sabe que seu nome de usuário ou senha está errado, e você precisará continuar para o próximo passo para redefinir suas credenciais.

Acesso negado ao MySQL
Acesso negado ao MySQL

Abaixo está a mensagem que você quer ver, “A conexão com o banco de dados está funcionando corretamente”, mas é claro, se estivesse, então você não estaria aqui. Certifique-se de apagar/remover este arquivo depois que você terminar de testar.

Conexão de banco de dados funcionando corretamente
Conexão de banco de dados funcionando corretamente

Então, em seguida, você precisa redefinir seu nome de usuário e senha. No cPanel, clique em MySQL Databases sob a seção Databases.

cPanel MySQL banco de dados
cPanel MySQL banco de dados

Role para baixo e crie um novo usuário do MySQL. Tente e escolha um nome de usuário e senha únicos para que eles não possam ser facilmente adivinhados. A ferramenta geradora de senhas que eles fornecem funciona excelente. Então clique em “Create User” (Criar Usuário). Alternativamente, você pode mudar a senha nesta tela para o usuário atual do banco de dados.

Criar um novo usuário MySQL
Criar um novo usuário MySQL

Em seguida, role para baixo e adicione seu novo usuário ao seu banco de dados. A próxima tela irá perguntar quais privilégios você quer atribuir. Selecione “Todos os Privilégios”.

Adicionar usuário ao banco de dados no cPanel
Adicionar usuário ao banco de dados no cPanel

Então pegue essas novas credenciais e atualize seu arquivo wp-config.php. Você vai querer atualizar os valores DB_USER e DB_PASSWORD. Você também pode reexecutar o arquivo de teste de antes. Isto deve então resolver o seu problema de credenciais. Se não, você ainda pode ter o hostname errado (DB_HOST). Alguns provedores de hospedagem usam valores diferentes.

Veja uma lista de alguns valores comuns de host DB. Tipicamente, este será o localhost. Mas você sempre pode entrar em contato com seu provedor de hospedagem ou verificar a documentação deles se você não tiver certeza. Alguns também podem usar 127.0.0.1 ao invés de localhost.

Se você seguiu tudo acima e ainda está recebendo a mensagem “erro ao estabelecer uma conexão com o banco de dados”, prossiga para os seguintes passos de solução de problemas abaixo.

Verifique as Credenciais do Banco de Dados com Kinsta

Se você é um usuário Kinsta, verificar suas credenciais em relação ao seu arquivo wp-config.php e o servidor é muito mais fácil! Tudo o que você precisa fazer é clicar na seção info do seu site, e na parte inferior, você verá o nome do banco de dados, nome de usuário e senha. Por padrão, Kinsta usa o localhost para o DB_HOST.

Verificação das credenciais do banco de dados de seu site em MyKinsta.
Verificação das credenciais do banco de dados de seu site em MyKinsta.

Então pegue essas novas credenciais e atualize seu arquivo wp-config.php. Você vai querer atualizar os valores DB_USER e DB_PASSWORD. Isto deve então resolver o seu problema de credenciais. Se você precisar redefinir essas credenciais, entre em contato com nossa equipe de suporte. Se você seguiu tudo acima e ainda está recebendo a mensagem “erro ao estabelecer uma conexão com o banco de dados”, prossiga para os seguintes passos de solução de problemas abaixo.

2. Reparando o banco de dados corrompido

Em alguns casos, pode ser que o seu banco de dados tenha se tornado corrompido. Isso pode acontecer ocasionalmente (embora não com muita frequência) já que, com o tempo, centenas de tabelas são constantemente adicionadas/removidas por novos plugins e temas. Se você tentar acessar o painel do seu site WordPress e estiver recebendo o seguinte erro, isso significa que seu banco de dados está corrompido: “Uma ou mais tabelas do banco de dados não estão disponíveis. A base de dados pode precisar ser corrigida ” É importante notar que você pode ver este erro apenas no back-end, enquanto você vê a mensagem “erro ao estabelecer uma conexão com o banco de dados” no frontend.

O WordPress tem um modo de reparo de banco de dados que você pode iniciar. Adicione o seguinte no final do seu arquivo wp-config.php.

define('WP_ALLOW_REPAIR', true);
Modo de reparação WordPress
Modo de reparação WordPress

Então navegue até o seguinte local no seu site WordPress: https://yourdomain.com/wp-admin/maint/repair.php. Você terá então a opção de reparar o banco de dados ou reparar e otimizar o banco de dados. Como você provavelmente está solucionando um problema no seu site agora, recomendamos o uso da opção de reparo do banco de dados, pois é mais rápido.

Nossos clientes corrigem este erro em minutos diretamente do seu painel MyKinsta. Experimente Kinsta de graça.

Banco de dados de reparo WordPress
Banco de dados de reparo WordPress

Após executar o reparo do banco de dados acima, certifique-se de remover a linha de código que você adicionou ao seu arquivo wp-config.php. Caso contrário, qualquer pessoa será capaz de acessar a página repair.php. Se você estiver executando o cPanel, você também pode executar um reparo a partir da tela do banco de dados MySQL.

Reparação do banco de dados cPanel
Reparação do banco de dados cPanel

Ou você pode fazer um reparo a partir do phpMyAdmin. Simplesmente entre no phpMyAdmin, clique no seu banco de dados e selecione todas as tabelas. Então, do menu suspenso, clique em “Reparar tabela” Isto é essencialmente apenas rodar o comando “REPAIR TABLE“.

Reparação de tabelas no phpMyAdmin
Reparação de tabelas no phpMyAdmin

E finalmente, sua outra opção seria executar o reparo usando o WP-CLI com o seguinte comando:

wp db repair

Veja mais documentação sobre o uso nos recursos do desenvolvedor do WordPress.

Se você quer otimizar seu banco de dados, nós temos alguns tutoriais ótimos sobre como otimizar as revisões do WordPress para desempenho, juntamente com como converter suas tabelas MyISAM para InnoDB. Se você ainda tiver problemas em seu site, prossiga para a próxima etapa de solução de problemas.

Leitura sugerida: Como corrigir o erro “MySQL Server Has Gone Away” no WordPress.

3. Corrigindo arquivos WordPress corrompidos

A seguinte razão possível para você ver a mensagem “Erro ao estabelecer uma conexão com o banco de dados” é que seus arquivos centrais do WordPress se tornaram corruptos. Se isto se originou de um problema com a transferência de arquivos via FTP, um hacker ganhando acesso ao seu site, ou um problema com o seu host, você pode corrigir isso rapidamente. Entretanto, nós recomendamos que você faça um backup do seu site antes de tentar isso.

Você vai substituir a versão principal do WordPress em seu site. Você não está tocando em seus plugins, temas ou mídia, apenas na própria instalação do WordPress.

Entretanto, você pode perder qualquer mudança ou código personalizado que você tenha adicionado a arquivos como .htaccess ou wp-config.php. Se você fizer backup do seu site antes da solução de problemas, você terá cópias desses arquivos que você pode restaurar mais tarde.

Para começar, você deve baixar uma nova cópia WordPress do WordPress.org.

Download WordPress
Download WordPress

Descompacte este arquivo em seu computador. Dentro, você vai querer excluir a pasta wp-content e o arquivo wp-config-sample.php.

Apagar pasta wp-content
Apagar pasta wp-content

Então carregue os arquivos restantes via SFTP para o seu site, substituindo os arquivos existentes. Isto substituirá todos os arquivos problemáticos e assegurará que você tenha os novos que estão limpos e não corrompidos. É recomendado limpar o cache do seu navegador depois de fazer isso. Então verifique seu site WordPress para ver se o erro ainda existe.

4. Problemas com o seu servidor de banco de dados

Se nada acima ajudou a resolver o seu problema, recomendamos verificar com o seu provedor de hospedagem, pois pode ser um problema com o seu servidor de banco de dados. Por exemplo, se houver muitas conexões simultâneas ao seu banco de dados ao mesmo tempo, isso pode gerar um erro. Isto é porque muitos hosts limitam seus servidores em quantas conexões são permitidas de uma vez. A utilização de um plugin de cache pode ajudar a minimizar as interações do banco de dados em seu site. Se você é um cliente Kinsta, você não precisa de plugins de cache, pois nós temos um cache rápido em nível de servidor.

Este problema pode acontecer muito em hospedeiros compartilhados, já que outra pessoa poderia teoricamente estar afetando o seu site. Isto porque os hosts compartilhados utilizam todos os mesmos recursos nos servidores. Esta é outra razão pela qual nós recomendamos usar um host WordPress gerenciado de alto desempenho, para que as coisas não fiquem superlotadas. Isso também significa que o ambiente é normalmente afinado para lidar com grandes quantidades de tráfego, especificamente para sites WordPress.

A experiente equipe de suporte Kinsta está sempre a um clique de distância no lado inferior direito do painel e disponível 24 horas por dia, 7 dias por semana, se você precisar de ajuda. E não se esqueça que temos representantes para ajudá-lo em vários idiomas, incluindo inglês, espanhol, francês, italiano e português.

Contate o suporte Kinsta
Contate o suporte Kinsta

5. Restaure o Backup mais recente

E por último, mas não menos importante, você pode sempre recorrer a um backup, se necessário. Em alguns casos, esta pode ser uma maneira mais rápida de resolver o problema se você não estiver preocupado em perder nenhum dado entre quando seu último backup foi feito. Muitos anfitriões têm seu próprio processo de restauração de backup. Lembre-se de que você pode precisar restaurar tanto seu banco de dados quanto seus arquivos.

Se você é um usuário Kinsta, você pode restaurar rapidamente um backup do seu site dentro da seção Backups do seu site. Escolha o tempo que você deseja reverter e clique em “Restaurar para” Você pode então selecionar se você quer restaurar para o ambiente de teste ou para o seu de produção.

Restaurar o backup do WordPress
Restaurar o backup do WordPress

Você será então solicitado a confirmar a restauração. Digite o nome do seu site e clique em “OK”. Ele também cria um backup no momento da restauração para que você possa desfazer a restauração, se necessário.

Confirmação da restauração WordPress
Confirmação da restauração WordPress
Este erro não é algo a ser tomado de ânimo leve & pode afetar diretamente suas vendas, tráfego e análises 😬 Saiba como corrigi-lo aqui ✅Clique para Tweetar

Resumo

Como você pode ver, há várias maneiras de corrigir o “erro de estabelecer uma conexão de banco de dados” no WordPress. As mais comuns são as credenciais inválidas no arquivo wp-config.php. Verificar para garantir que elas estejam corretas é o melhor lugar para começar. A última coisa que você quer para um site é experimentar o tempo de inatividade.

Esperamos que um dos passos acima tenha ajudado você a colocar o seu site de volta em funcionamento. Lembre-se, você sempre pode restaurar seu site a partir de um backup, se necessário.

Você já experimentou a mensagem “Erro ao estabelecer uma conexão com o banco de dados” em seu site? Se sim, você foi capaz de resolvê-la? Informe-nos abaixo nos comentários.


Economize tempo, custos e otimize o desempenho do seu site com:

  • Ajuda instantânea de especialistas em hospedagem do WordPress, 24/7.
  • Integração do Cloudflare Enterprise.
  • Alcance global com 35 centros de dados em todo o mundo.
  • Otimização com nosso monitoramento integrado de desempenho de aplicativos.

Tudo isso e muito mais em um plano sem contratos de longo prazo, migrações assistidas e uma garantia de 30 dias de devolução do dinheiro. Confira nossos planos ou entre em contato com as vendas com as vendas para encontrar o plano certo para você.