Cómo reparar tablas marcadas como defectuosas o corruptas en MySQL

Desde hace más de un año usábamos el plugin Counterizer para WordPress y así llevar estadísticas del blog y sus lectores, este plugin lo desactivamos hace unos pocos días ya que (entre otras cosas) guardaba en la base de datos más de 600MBs de datos.

Sucede que (antes de desactivar el plugin y limpiar la DB) intenté hacer un dump de la base de datos, o sea, exportarla a .SQL y así descargarla y en la terminal del hosting me apareció el siguiente error:

mysqldump: Got error: 144: Table './dl_database/Counterize_Referers' is marked as crashed and last (automatic?) repair failed when using LOCK TABLES

Por lo que, el dump no se efectuaba y bueno… la solo idea de pensar que la DB de DesdeLinux tenía algún problema me puso los pelos de punta :)

Haciendo un poco de investigación por la web pude aprender a solucionar este problema, al parecer NO es que la base de datos tenga problemas exactamente, simplemente que una tabla está marcada como ‘con problemas’, afortunadamente esto es muy simple de arreglar.

Primero accedamos al servidor MySQL:

mysql -u root -p

Presionamos [Enter] y nos pedirá el password del root del MySQL, lo ponemos y presionamos [Enter] de nuevo.

Este comando es en caso de que el servidor MySQL esté instalado en ese mismo ordenador, si desean conectarse de forma remota a otro servidor MySQL deben agregar a la línea lo siguiente: -h IP-DE-SERVIDOR

Una vez dentro de MySQL le indicaremos qué base de datos usar, por ejemplo el problema según el error de arriba está en la tabla Counterize_Referers de la base de datos  dl_database, por lo que:

use database dl_database;

Y ahora a reparar la base de tabla:

repair table Counterize_Referers;

Noten que al final de estas líneas hay un punto y coma —–»  ;

Una vez ejecutado el comando anterior todo debe haber vuelto a la normalidad, al menos en mi caso ha sido así en más de una ocasión ;)

Luego solo queda volver a ejecutar la instrucción para hacer el dump de la base de datos y listo, nada más.

En fin, hago esto más que otra cosa como un memorandum para mí, pues ya me ha sucedido lo mismo en dos ocasiones y no quiero olvidar las instrucciones para salvarme el día :D

Saludos y espero le resulte de ayuda a alguien más.