Delirios de un Informático

Delirando sobre informática, fotografía, programación, móviles y mucho más desde 2003

Cómo acelerar myisamchk

votar
Archivado en Software con fecha 21/May/2009 - 0 comentarios

Cuando se tiene una tabla MyISAM dañada de 5 GB y 15 millones de registros, repararla puede ser una tarea que dure dias. Se debe principalmente a que la reparación se realiza mediante Repair with keycache en vez de Repair by sorting, infinitamente más rápido. Si se ejecuta el primero es porque el segundo suele fallar al no tener unos parámetros de memoria adecuados, resultando en un error como este:

myisamchk: error: myisam_sort_buffer_size is too small

Tras mucho trastear, mi solución resultó ser la siguiente:

myisamchk --sort_buffer_size=256M --read_buffer_size=2M
          --write_buffer_size=1M  --sort-recover tabla.MYI

Esto hace que en vez de procesar 1.000 consultas por segundo procese 100.000 con el evidente ahorro de tiempo y gasto de energía.

Delirios de un Informático :: Gestionado con WordPress :: Alojado en Bitacoras.com :: Licenciado bajo Creative Commons