Come riparare le tabelle contrassegnate come cattive o danneggiate in MySQL

Per più di un anno abbiamo utilizzato il plugin Counterizer per WordPress e quindi conserviamo le statistiche del blog e dei suoi lettori, questo plugin è stato disattivato da pochi giorni poiché (tra l'altro) ha salvato più di 600MB di dati nel database.

Succede che (prima di disattivare il plugin e pulire il DB) ho provato a fare il dump del database, cioè ad esportarlo in .SQL e quindi a scaricarlo e nel terminale di hosting ho ricevuto il seguente errore:

mysqldump: errore ricevuto: 144: la tabella "./dl_database/Counterize_Referers" è contrassegnata come arrestata in modo anomalo e l'ultima riparazione (automatica?) non è riuscita quando si utilizza LOCK TABLES

Pertanto il dump non è stato effettuato e beh... la sola idea di pensare che il DB DesdeLinux avesse un problema mi faceva rizzare i capelli 

Facendo una piccola ricerca sul web ho potuto imparare come risolvere questo problema, a quanto pare NON è che il database abbia problemi esattamente, semplicemente che una tabella è contrassegnata come 'con problemi', fortunatamente questo è molto semplice da risolvere.

Per prima cosa accediamo al server MySQL:

mysql -u root -p

Premiamo [Invio] e ci chiederà la password di root di MySQL, la inseriamo e premiamo nuovamente [Invio].

Questo comando è nel caso in cui il server MySQL sia installato sullo stesso computer, se vuoi connetterti in remoto a un altro server MySQL devi aggiungere quanto segue alla riga: -h IP-OF-SERVER

Una volta entrati in MySQL, vi indicheremo quale database utilizzare. Ad esempio, il problema, secondo l'errore sopra riportato, si trova nella tabella Counterize_Referers del database dl_database , quindi:

use database dl_database;

E ora per riparare la base del tavolo:

repair table Counterize_Referers;

Nota che alla fine di queste righe c'è un punto e virgola —– »  ;

Una volta eseguito il comando precedente tutto dovrebbe essere tornato alla normalità, almeno nel mio caso è stato così in più di un'occasione 

Quindi non resta che rieseguire l'istruzione per scaricare il database e voilà, niente di più.

Comunque lo faccio più che altro come promemoria per me stesso, dato che la stessa cosa mi è già successa due volte e non voglio dimenticare le istruzioni per salvare la situazione 

Saluti e spero che sia utile a qualcun altro.


Aggiungi come fonte preferita in Google