Wordpress

Error Establishing a Database Connection no WordPress – Correção

O que é e como corrigir o erro Error Establishing a Database Connection no seu site WordPress.

Primeiro passo, por que está ocorrendo este erro?

O Erro é auto explicativo, não foi possível estabelecer uma conexão com o banco de dados.

WordPress utiliza do banco de dados Mysql para salvar os seus dados dinâmicos, que são gerados durante a utilização e configuração do site. Ex: Post, Páginas, Comentários etc.

O Banco de dados Mysql normalmente funciona independente do servidor web “apache” que executa a aplicação.

Explicando de uma forma mais simples, o seu site pode estar funcionando, porém o banco de dados não!

Antes de resolver por conta própria..

Em 90% dos casos o erro “Error Establishing a Database Connection” é por que o servidor aonde está rodando o banco de dados caiu.

Em hospedagens compartilhadas você não consegue fazer nada para iniciar o banco por conta própria!

Neste caso você terá que entrar em contato com a empresa que fornece o serviço de hospedagem para o seu site e solicitar que o serviço seja normalizado!

Faça a abertura de um chamado, liguei, fale pelo Chat.

Normalmente as empresas de hospedagem possuem sistemas que identificam que um de seus servidores caíram e elas resolvem o problema sem você ficar sabendo.

Contudo, nem sempre é assim… e você pode ter que colocar a mão na massa!

Principais motivos que causam o erro

  • Simplesmente o servidor aonde está o banco de dados está fora do ar
  • Endereço do servidor “host” do banco de dados foi alterado
  • Nome do banco de dados foi alterado
  • Usuário e senha foram alterados
  • Firewall está bloqueando o acesso ao servidor externo do banco
  • Banco Mysql está bloqueando o acesso externo ao banco

Verificando os dados utilizados na conexão

Para verificar os dados que estão sendo utilizados pelo WordPress, edite o arquivo wp-config.php.

O arquivo wp-config.php está localizado na raiz da instalação do WordPress “diretório root”.

Exemplo:

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */define('DB_NAME', 'db');

/** MySQL database username */define('DB_USER', 'root');

/** MySQL database password */define('DB_PASSWORD', '');

/** MySQL hostname */define('DB_HOST', 'localhost');

/** Database Charset to use in creating database tables. */define('DB_CHARSET', 'utf8mb4');

/** The Database Collate type. Don't change this if in doubt. */define('DB_COLLATE', '');

Os valores de DB_NAME, DB_USER, DB_PASSWORD e DB_HOST são os utilizados para a conexão.

Testando os dados

Para testar os dados você terá que tentar realizar a conexão com o banco manualmente.

Utilize o programa: https://www.mysql.com/products/workbench/

Erro: One or more database tables are unavailable. The database may need to be repaired

Se a mensagem de erro for One or more database tables are unavailable. The database may need to be repaired, pode ser que algo tenha ocorrido com as tabelas do banco.

FAÇA BACKUP DO BANCO ANTES DE FAZER O REPARO!!!

Para reparar o banco, adicione no final do arquivo “wp-config.php” o código:

define('WP_ALLOW_REPAIR', true);

Acesse novamente o site para executar o reparação.

Dependendo da tabela que foi danificada você poderá perder uma grande quantidade de dados executando a reparação. Neste caso é importante que você tenha o backup em mãos para tentar restaurar as informações após o reparo das tabelas.

Conclusão “Error Establishing a Database Connection”

Caso você tenha alguma dúvida de como proceder ou precise de ajuda, deixe um comentário!

Não tente reparar o banco sem ter feito o backup antes. É importante que você teste o backup feito, restaurando em outro ambiente!

 

Post Recentes

Bloquear .env e .git no nginx: as regras que ainda deixam o arquivo vazar

Negar /.env no nginx parece resolvido até alguém pedir /wp-content/uploads/.env ou backup.sql. As regras que testei e os furos que…

13 horas atrás

Canonical errado no Yoast: corrigindo pelo filtro wpseo_canonical

O Search Console marca suas páginas 2, 3 e 4 como alternativas da página 1? Ajuste a tag canônica do…

16 horas atrás

Layout XML do Magento 2: remover bloco de módulo de terceiro

Um módulo de terceiro plantou um banner no topo da loja e você não quer desinstalar nada: tire o bloco…

1 dia atrás

Restaurar dump do Magento 2 em outro servidor: trocar a base_url no SQL

Importou o banco de produção e o site pula para o domínio antigo? Rode o UPDATE em core_config_data, limpe o…

2 dias atrás

Criar exceção customizada em PHP: quando estender Exception compensa

Seu catch trata pedido inexistente e banco fora do ar do mesmo jeito. Veja como criar exceção customizada em PHP…

3 dias atrás

DataProvider Magento 2: form do admin abre com campos vazios ao editar

O form do admin salva mas abre em branco na edição: veja o getData() indexado pelo id da entidade e…

4 dias atrás