WordPress wp_options table corrupted / Error establishing a database connection.

Nu am auzit pana acum pe 2015 sa fi fost vreun virus sau 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 dateError establishing a database connection.
In practica, cand apare o astfel de eroare pe WordPress, primele lucruri care se verifica sunt:

  1. 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.
  2. Eroare de configurare user / parola in 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 din 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. Deschidem 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.

Screen Shot 2015-12-16 at 6.32.25 PM

In screen-ul de mai sus este vorba despre tabelul wp_options din baza de date “mobile_apk“. Table ‘sqldb/wp_options’ is marked as crashed and should be repaired.

2. Selectam tabelul wp_options, bifand casuta din dreptul lui, apoi mergem in partea de jos la meniul drop-down (With selected) si selectam “Repair table“.

sql_repair_table_wp_options

3. Dupa acest pas din tutorial, asteptati raspunsul la comanda sql si apoi verificati daca site-ul merge in paramentrii normali.

Screen Shot 2015-12-16 at 6.33.15 PM

Utilizatorii de WordPress care nu au phpMyAdmin instalat, pot face acest lucru din terminal / serverul pe care este baza de date, executand comenzile:

  • verifica daca tabelul wp_options este corupt:
mysqlcheck -c baza_date wp_options -u user_db -p 
  • repara tabelul wp_options din baza de date “baza_date”:
mysqlcheck -r mydb wp_options -u user -p

Este bine ca dupa ce va asigurati ca site-ul a revenit la normal sa faceti un backup la baza de date. recomand chiar backup-ul periodic. Nu se stie niciodata :)

Pasionat de tehnologie, scriu cu plăcere pe StealthSettings.com începând cu anul 2006. Am o bogată experiență în sistemele de operare: macOS, Windows și Linux, dar și în limbaje de programare și platforme de blogging (WordPress) și pentru magazine online (WooCommerce, Magento, PrestaShop).

1 thought on “WordPress wp_options table corrupted / Error establishing a database connection.”

  1. WHY does this happen, though? I’ve been experiencing this with multiple sites for a client that are all hosted on a Godaddy server. Fixing it is easy enough, but what makes it corrupt in the first place and how do I prevent it from happening again?

    Reply
Leave a Comment