"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
Viu algo errado ou desatualizado?