Reparar tablas rotas en MySQL
Muchas veces las tablas se las bases de datos MySQL se rompen y provocan que nuestros sistemas en línea o gestores de contenidos dejen de funcionar. es por ello que les comparto una forma de chequear su estado y repararlas:
- Deben reemplazar “base-de-datos″ por el nombre real de la BD y “laTabla” por el verdadero nombre de la tabla.
- Siempre debes de hacer un backup de la tabla antes de proceder con la reparación, en caso de que se pueda efectuar.
Conectamos a MySQL desde la consola:
mysql -u root -p
Nos movemos hacia la BD que tiene la tabla rota
mysql> USE base-de-datos;
Verificamos el estado de la tabla:
mysql> CHECK TABLE laTabla;
La reparamos
mysql> REPAIR TABLE laTabla;
Atención: Si esto no arregla la tabla rota, lo que se debe hacer es lo siguiente:
Salimos del shell mysql con “quit;” y volvemos al shell Linux como root, allí tipeamos lo siguiente:
myisamchk -r /var/lib/mysql/base-de-datos/laTabla.MYI
Y si esto también falla, vamos a ir con otra variante al usar “–safe-recover”, esta opción demora más pero es la recomendada si la anterior falla:
myisamchk -r --safe-recover /var/lib/mysql/base-de-datos/laTabla.MYI
Espero les ayude como lo hizo a mi con una tabla corrupta que impedía que mi sistema en línea funcionara y que provocaba que mi servidor de Mysql se bloqueara al querer hacer uso de esta tabla.