Herramientas para testar y optimizar la configuración de MySQL analizando su rendimiento

Diferentes y conocidas herramientas como mysqltuner (Perl) y tuning-primer (Bash) permiten comprobar la calidad de la configuración del servicio MySQL en base a un análisis del rendimiento. Una vez han realizado los análisis proponen posibles mejoras a realizar sobre el fichero my.cnf de MySQL.

Estas aplicaciones junto con otros servicios como puede ser el “Configuration Wizard de Percona” nos permiten configurar y optimizar el servidor MySQL de una forma guiada.

Percona Configuration Wizard for MySQL: https://tools.percona.com/wizard

Herramienta en linea para contestas a las preguntas y obtener un fichero de configuración a medida. Recomendable como primer paso para crear una configuración que posteriormente podemos afinar con las siguientes aplicaciones.

phpMyAdmin Advisor

La pestaña “Advisor” phpMyAdmin proporciona, tras un análisis de las distintas variables, recomendaciones para ajustar y optimizar el servidor.

MySQLReport: http://hackmysql.com/mysqlreport

Informa de los valores importantes de estado de MySQL. Transforma los valores de SHOW STATUS en un informe fácil de leer para comprender que tan bien se está ejecutando MySQL. Especialmente diseñada para facilitar la interpretación de “SHOW STATUS”.

Tuning-Primer: https://launchpad.net/mysql-tuning-primer

Este script toma la información de “SHOW STATUS LIKE ...” y “SHOW VARIABLES LIKE …” para después hacer recomendaciones de optimización en al configuración de MySQL. Es compatible con todas las versiones de MySQL 3.23 y superior.

MySQLTuner: https://github.com/major/MySQLTuner-perl

Script escrito en Perl que permite revisar, al igual que Tuning-Primer y MySQLReport, una instalación MySQL de forma rápida y realizar ajustes para aumentar el rendimiento y la estabilidad.

Recomendaciones a la hora de optimizar una configuración de MySQL.

1.- Utilizar la herramienta de configuración online de Percona y adaptarla según nuestros conocimientos / necesidades.

2.- Dejar el servidor en producción durante una semana.

3.- Probar las herramientas mencionadas anteriormente para conocer futuras mejoras: phpMyAdmin Advisor, MySQLReport, Tuning-Primer y MySQLTuner. Muchas de las recomendaciones se repetirán entre las distintas herramientas y otras se complementarán.

4.- Modificar el fichero de configuración acorde a esas recomendaciones, dejar en producción el servidor una semana más y volver a probar las herramientas del paso 3.

NOTA: Se recomienda tener alguna aplicación para monitorizar MySQL y comprobar que realmente se está mejorando el rendimiento.