# "Erro ao estabelecer conexão com o banco de dados" no WordPress: o que fazer

> A mensagem quer dizer que o WordPress não conseguiu entrar no banco de dados MySQL do site. As causas mais comuns são dados errados no wp-config.php (nome do banco, usuário, senha ou host), usuário sem acesso ao banco e tabelas corrompidas. Comece conferindo o wp-config.php com os dados da aba Banco de dados.

A mensagem **"Erro ao estabelecer conexão com o banco de dados"** quer dizer que o WordPress não conseguiu entrar no banco de dados MySQL onde ficam os posts, as páginas e as configurações do site. As causas mais comuns são: dados errados no arquivo `wp-config.php` (nome do banco, usuário, senha ou host), usuário do banco sem acesso ao banco e tabelas corrompidas. É muito comum logo depois de uma migração ou de trocar a senha do usuário do banco. Comece conferindo o `wp-config.php` com os dados da aba **Banco de dados** da página do site.

> **Atenção: este tutorial mexe na segurança do seu site.** As mudanças descritas aqui são feitas por sua conta e risco. Confira cada passo antes de aplicar.

## Sintomas

- O site mostra só a frase "Erro ao estabelecer conexão com o banco de dados" ou, em inglês, `Error establishing a database connection`.
- O painel do WordPress (`seudominio.com.br/wp-admin`) mostra a mesma mensagem.
- O painel do WordPress mostra `One or more database tables are unavailable. The database may need to be repaired.`

## Causa 1: dados errados no wp-config.php

**Como confirmar:** abra o arquivo `wp-config.php`, na pasta do site (em geral `public_html`), pelo gerenciador de arquivos; veja "Como usar o gerenciador de arquivos da hospedagem pelo painel". Confira as linhas `DB_NAME` (nome do banco), `DB_USER` (usuário) e `DB_HOST` (servidor do banco) com o que aparece na aba **Banco de dados** da página do site. O nome do banco e o do usuário levam o prefixo da sua conta na frente, como `<prefixo>_meubanco`. Para sites na própria hospedagem, o `DB_HOST` normalmente é `localhost`. A senha do usuário fica em `DB_PASSWORD`, no mesmo arquivo.

**Como resolver:** corrija o valor errado no `wp-config.php` e salve. Se você não sabe a senha do usuário do banco, ela não fica visível no painel depois de criada: crie um usuário novo com uma senha nova, dê a ele acesso ao banco e coloque o usuário e a senha novos em `DB_USER` e `DB_PASSWORD`. O passo a passo está em "Como criar um banco de dados e um usuário MySQL pelo painel".

## Causa 2: o usuário do banco não tem acesso ao banco

**Como confirmar:** os dados do `wp-config.php` batem com a aba **Banco de dados**, mas o usuário foi criado sem ser atribuído ao banco. O painel avisa, ao criar o usuário, que ele nasce sem permissão.

**Como resolver:** na aba **Banco de dados**, use **Atribuir banco**, escolha o banco e o usuário do site e confirme. O passo a passo está em "Como criar um banco de dados e um usuário MySQL pelo painel".

## Causa 3: tabelas do banco corrompidas

**Como confirmar:** o painel do WordPress mostra `One or more database tables are unavailable`, ou só parte do site carrega. A verificação do banco no cPanel aponta tabelas com erro.

**Como resolver:** exporte uma cópia do banco antes e rode o reparo em **Bancos de dados › Manage My Databases**, na seção **Modificar bancos de dados**. O passo a passo está em "Como verificar e reparar um banco de dados no cPanel". Se o reparo não resolver, restaure o banco de um backup.

## Causa 4: o banco não existe ou está vazio

**Como confirmar:** o nome em `DB_NAME` não aparece na lista da aba **Banco de dados**, ou o banco aparece mas sem tabelas (por exemplo, numa migração em que só os arquivos foram copiados).

**Como resolver:** importe o banco do site antigo; veja "Como importar um banco de dados pelo phpMyAdmin no cPanel". Se o banco foi apagado por engano, restaure de um backup em "Como restaurar um backup da hospedagem pelo painel".

## Causa 5: o servidor de banco está indisponível ou o site bateu no limite

**Como confirmar:** o erro aparece e some sozinho, em horários de muito acesso, ou aparece em todos os sites da conta ao mesmo tempo. Na aba **Desempenho**, o contador `faults` está acima de zero; veja "Como ver o desempenho do seu site". Confira também a página de status em "Como ver o status dos serviços da StayCloud".

**Como resolver:** se for pico de uso, ative o cache do site e revise plugins pesados. Se a página de status mostrar incidente, acompanhe por lá. Se nada disso explicar, chame o Suporte.

## Quando chamar o Suporte

O suporte da StayCloud cuida da infraestrutura da hospedagem e da configuração dela, não do código do site; veja "Perguntas frequentes sobre o que o suporte da StayCloud faz". Abra um chamado se os dados do `wp-config.php` estão certos, o usuário tem acesso ao banco, o reparo não aponta erro e a mensagem continua, ou se o erro aparece em todos os sites da conta. No chamado, informe o endereço do site, o horário, a mensagem exata, o nome do banco e do usuário (nunca a senha na descrição; se a equipe precisar, use o campo **Adicionar credenciais ao chamado**) e o que você já tentou. O passo a passo está em "Como abrir um chamado no Suporte".

## Relacionados

- Como criar um banco de dados e um usuário MySQL pelo painel
- Como verificar e reparar um banco de dados no cPanel
- Como importar um banco de dados pelo phpMyAdmin no cPanel
- Como usar o gerenciador de arquivos da hospedagem pelo painel
- Como restaurar um backup da hospedagem pelo painel
- Como ver o status dos serviços da StayCloud
- Perguntas frequentes sobre o que o suporte da StayCloud faz
- Como abrir um chamado no Suporte

---
Fonte: https://help.staycloud.com/artigos/erro-ao-estabelecer-conexao-com-o-banco-de-dados-no-wordpress-o-que-fazer
