Después de la instalación inicial de una base de datos MySQL, los administradores de TI pueden detectar que el rendimiento de E / S de sus servidores ha comenzado a degradarse.

Una de las razones más comunes para esto es la fragmentación del disco duro. Si su instalación particular utiliza un gran número de llamadas aleatorias, esto a menudo conducirá a la fragmentación en toda la memoria instalada.

Tener un régimen de desfragmentación es esencial para evitar este problema de rendimiento.

Una de las áreas clave para buscar la fragmentación es en las tablas SQL. Esto puede suceder a menudo con la eliminación aleatoria y las inserciones fragmentan cada vez más una tabla hasta que se produce una caída en el rendimiento en el servidor host..

Además, si observa aumentos en el uso de espacio en disco que no pueden explicarse por otras acciones que ha realizado, es probable que la culpa sea de una tabla fragmentada, ya que tienden a ocupar más espacio en disco disponible..

Primer paso

Las tablas más comunes para experimentar la fragmentación serán InnoDB y MyISAM. Para los administradores de sistemas que tienen la tarea de comprender por qué se ha erosionado el rendimiento de la base de datos, el primer paso siempre será un buen primer paso..

Esto se debe a que, como la tabla InnoDB marca cualquier dato escrito como eliminado, el bloque permanece vacío y no se sobrescribe con datos nuevos. Por supuesto, con el tiempo esto infla artificialmente la tabla con un problema correspondiente con el rendimiento.

En general, la ejecución de la rutina 'Optimizar tabla' reconstruirá la tabla y su índice. Tenga en cuenta que la tabla se bloqueará mientras se ejecuta este comando.

Además, los administradores de sistemas deben tener en cuenta que las tablas secundarias podrían tener altos niveles de fragmentación incluso después de que se complete la rutina..

Sin embargo, muchos administradores de sistemas son más inteligentes con sus regímenes de desfragmentación, ya que se dan cuenta de que algunas tablas tendrán más tráfico que otras. Realizar una desfragmentación dura a través de la rutina de la tabla de optimización puede ser ineficiente.

Una consecuencia de hacer esto con regularidad es que cada instancia genera un registro de transacciones, lo que puede tomar una cantidad cada vez mayor de tiempo para realizar una copia de seguridad. Además, comprobar el nivel real de fragmentación en cada índice antes de comenzar puede ser muy revelador..

Establecer un nivel mínimo de fragmentación del índice antes de realizar la desfragmentación asegurará que no esté realizando desfragmentaciones innecesarias en sus servidores.

Bajo factor de llenado

Los administradores de sistemas también deberían pensar en cómo han configurado su base de datos. En algunos casos, esto incluirá un factor de relleno bajo, que acelera las escrituras en la base de datos pero, a la inversa, ralentiza las lecturas.

También pueden ver ventajas de rendimiento si pueden almacenar sus bases de datos en caché..

Si esto no es posible, observe cómo se distribuye la base de datos en los discos duros instalados. Si tiene almacenamiento compartido en una instalación de Dell PowerEdge, por ejemplo, piense cómo podría simplificar esto para reducir la cantidad de accesos aleatorios que debe realizar su base de datos en un número determinado de discos duros.

Además de centrarse en las tablas de la base de datos, los administradores de TI también deben pensar en su mantenimiento de los discos duros físicos que utilizan sus servidores. Una desfragmentación del SO a intervalos regulares debería ofrecer una mejor vida útil para el hardware y también permitir que las aplicaciones instaladas vean mejoras en el rendimiento..