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

20
15956

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 😀

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

20 COMENTARIOS

    • Ehm… no te entendí muy bien ahora 🙂
      Antes de que hiciéramos una limpieza en la DB de DesdeLinux esta (o sea, el .sql de la DB) pesaba más de 700MB, porque guardábamos en la DB todas las estadísticas. O sea, desde casi el inicio del blog.

      Ahora estamos usando Google A. por lo que borramos las tablas de estadísticas de la DB, y ahora no llega a los 80MB el .sql

      ¿responde esto a tu pregunta?

  1. Hola amigo, no sé si me puedas ayudar, algo parecido ocurrió con mi web.Marca este error:
    La tabla wp_posts no está bien. Informa del siguiente error: Table is marked as crashed and last repair failed. WordPress intentará reparar esta tabla…
    Error al reparar la tabla wp_posts. Error: Table is marked as crashed and last repair failed

    No sé si me puedas ayudar a solucionarlo, soy nuevo con WordPress avanzado. Al intentar reparar la tabla wp- post marca error de que no se puede reparar. Gracias. Mi web es : https://diarionoticiasweb.com

Dejar una respuesta