5.4.1. myisamchk

El programa myisamchk es una utilidad en línea de comandos que se incluye con la distribución de MySQL y sirve para reparar tablas tipo MyISAM. Para utilizarlo con seguridad el servidor no debe estar ejecutándose y se recomienda realizar un respaldo del directorio de datos antes de su utilización.

Recibe como parámetro principal los archivos .MYI correspondientes a las tablas que hay que revisar; es decir, myisamchk no conoce la ubicación del directorio de datos. Por ejemplo, si el directorio de datos está ubicado en /val/ lib/mysql, las siguientes serían dos maneras de realizar una comprobación de los archivos de la base de datos demo:

# myisamchk /var/lib/mysql/demo/*.MYI
# cd /var/lib/lib/mysql/demo
# myisamchk *.MYI

Se pueden revisar todas las bases de datos utilizando ’*’ para denominar el directorio de la base de datos:

# myisamchk /var/lib/mysql/*/*.MYI

Para realizar una comprobación rápida, el manual sugiere utilizar el siguiente comando:

# myisamchk --silent --fast *.MYI

Y para realizar la corrección de las tablas corruptas, el manual sugiere la sintaxis siguiente:

Nota                                                        
En la práctica con estas opciones se logran corregir los errores más comunes. Para conocer otras opciones de recuperación con myisamchk, podéis consultar el manual que acompaña a la distribu- ción de MySQL.

 

 

 

 

 

 

# myisamchk --silent --force --update-state -O key_buffer=64M \ -O sort_buffer=64M -O read_buffer=1M -O write_buffer=1M *.MYI

Las opciones dadas por -O se refieren al uso de memoria, que permiten acelerar de forma notoria el proceso de reparación.

 

--force reinicia myisamchk con el parámetro  --recover cuando encuentra algún error.

--updatestate almacena información sobre el resultado del análisis en la tabla MYI.