06.09.2014 Views

Bases de datos: Software libre - Universitat Oberta de Catalunya

Bases de datos: Software libre - Universitat Oberta de Catalunya

Bases de datos: Software libre - Universitat Oberta de Catalunya

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

© FUOC • 71Z799014MO 54 <strong>Bases</strong> <strong>de</strong> <strong>datos</strong> en MySQL<br />

El comando optimize table pue<strong>de</strong> también realizar algunas correcciones sobre<br />

una tabla.<br />

5.4.1. myisamchk<br />

El programa myisamchk es una utilidad en línea <strong>de</strong> comandos que se incluye<br />

con la distribución <strong>de</strong> MySQL y sirve para reparar tablas tipo MyISAM. Para<br />

utilizarlo con seguridad el servidor no <strong>de</strong>be estar ejecutándose y se recomienda<br />

realizar un respaldo <strong>de</strong>l directorio <strong>de</strong> <strong>datos</strong> antes <strong>de</strong> su utilización.<br />

Recibe como parámetro principal los archivos .MYI correspondientes a las tablas<br />

que hay que revisar; es <strong>de</strong>cir, myisamchk no conoce la ubicación <strong>de</strong>l directorio<br />

<strong>de</strong> <strong>datos</strong>. Por ejemplo, si el directorio <strong>de</strong> <strong>datos</strong> está ubicado en /val/<br />

lib/mysql, las siguientes serían dos maneras <strong>de</strong> realizar una comprobación <strong>de</strong><br />

los archivos <strong>de</strong> la base <strong>de</strong> <strong>datos</strong> <strong>de</strong>mo:<br />

# myisamchk /var/lib/mysql/<strong>de</strong>mo/*.MYI<br />

# cd /var/lib/lib/mysql/<strong>de</strong>mo<br />

# myisamchk *.MYI<br />

Se pue<strong>de</strong>n revisar todas las bases <strong>de</strong> <strong>datos</strong> utilizando ’*’ para <strong>de</strong>nominar el directorio<br />

<strong>de</strong> la base <strong>de</strong> <strong>datos</strong>:<br />

# myisamchk /var/lib/mysql/*/*.MYI<br />

Para realizar una comprobación rápida, el manual sugiere utilizar el siguiente<br />

comando:<br />

# myisamchk --silent --fast *.MYI<br />

Y para realizar la corrección <strong>de</strong> las tablas corruptas, el manual sugiere la sintaxis<br />

siguiente:<br />

# myisamchk --silent --force --update-state -O key_buffer=64M \<br />

-O sort_buffer=64M -O read_buffer=1M -O write_buffer=1M *.MYI<br />

Las opciones dadas por -O se refieren al uso <strong>de</strong> memoria, que permiten acelerar <strong>de</strong> forma notoria<br />

el proceso <strong>de</strong> reparación.<br />

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

Nota<br />

En la práctica con estas opciones<br />

se logran corregir los<br />

errores más comunes. Para conocer<br />

otras opciones <strong>de</strong> recuperación<br />

con myisamchk,<br />

podéis consultar el manual<br />

que acompaña a la distribución<br />

<strong>de</strong> MySQL.<br />

--updatestate almacena información sobre el resultado <strong>de</strong>l análisis en la tabla MYI.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!