Nu am auzit pana acum pe 2015 sa fi fost vreun vírus ou exploit de SQL care sa puna “la pamant” sute de site-uri si bloguri WordPress, asa cum a fost in anii trecuti, insa de aproximativ o luna apar lucruri ciudate. Am intalnit mai multe site-uri care pareau ca si-au pierdut conexiunea la baza de date.Error establishing a database connection.
In practica, cand apare o astfel de eroare pe WordPress, primele lucruri care se verifica sunt:
- Daca serviciul mysql ruleaza pe server. Sunt situatii in care din supraincarcarea serverului pe care este hostata baza de date, serviciul mysql / mysqld sa nu mai ruleze. In acest caz se reporneste serviciul din terminal (via ssh sau consola) sau din interfata web daca exista aceasta posibilitate.
- Eroare de configurare usuário / palavra em wp-config.php. In aceasta situatie se verifica daca user-ul baze de date si numele bazei de date sunt corect setate in wp-config.php.
O a treia situatie este coruperea (inexplicabila pana in acest moment) tabelului WP_Options DE Mysql. Asadar, inainte de a intra in panica daca va gasiti site-ul cu “Error establishing a database connection”, este bine sa verificati daca tabelele din baza de date sunt in regula.
Cum verificam si cum reparam tabelul wp_options din WordPress in caz de este corupt. Marked as crashed and should be repaired.
1. Abrimos phpmyadmin, mergem pe baza de date a site-ului care este picat si incercam sa accesam tabelul WP_Options. In cazul in care acesta este corupt, o sa apara o alerta care ne informeaza acest lucru.

In screen-ul de mai sus este vorba despre tabelul WP_Options din baza de date “mobile_apk“. Tabela ‘sqldb/wp_options’ está marcado como danificado e deve ser reparado.
2. Selecione a tabela wp_options, marcando a caixa ao lado dele, vá até a parte inferior do menu suspenso (com selecionado) e selecione “Mesa de reparo“.

3. Após esta etapa do tutorial, aguarde a resposta ao comando sql e depois verifique se o site está funcionando normalmente.

Usuários do WordPress que não possuem o phpMyAdmin instalado, podem fazer isso a partir do terminal/servidor onde está o banco de dados, executando os comandos:
- verifique se a tabela wp_options está corrompida:
mysqlcheck -c baza_date wp_options -u user_db -p
- corrija a tabela wp_options no banco de dados “banco de dados”:
mysqlcheck -r mydb wp_options -u user -p
É bom que depois de se certificar de que o site voltou ao normal, faça um backup do banco de dados. Eu até recomendo backups periódicos. Você nunca sabe :)
POR QUE isso acontece? Tenho experimentado isso com vários sites de um cliente, todos hospedados em um servidor Godaddy. Consertar isso é bastante fácil, mas o que o torna corrompido em primeiro lugar e como evito que isso aconteça novamente?