Activación y análisis de MySQL Slow Query Log en Plesk y Ubuntu 18.04.5 LTS

¿Tu página web empieza a ir lenta? Una de las causas pueden ser las consultas lentas. Te enseño como activarlas y su posterior análisis.

¿Qué es el Slow Query Log?

El Slow Query log es un fichero de log de linux que almacena todas aquellas consultas lentas que superen un límite de tiempo establecido por la variable de sistema long_query_time

Para filtrar y depurar aún más estas consultas lentas, podemos usar la variable de sistema min_examined_row_limit indicando el número mínimo de filas que debería devolver para ser considerada lenta.

Activación de Slow Queries

Por defecto las slow querys están desactivadas. Para activarlas buscaremos y editaremos el fichero my.cnf.

  • En Debian/Ubuntu está localizado en /etc/mysql/
  • En Centos/RHEL está localizado en /etc/

Debemos establecer la variable de sistema slow_query_log a 1 en la sección [mysqld] del fichero my.cnf

La variable de sistema long_query_time establece el tiempo en segundos para que una consulta sea considerada lenta. Por lo que podemos incluir un valor entre 0 y 10 segundos incluyendo también microsegundos si fuera necesario.

Hay que tener en cuenta que todas aquellas Querys que sean administrativas no serán guardadas. En caso de necesitar incluirlas tendremos que usar las variables de sistema log_slow_admin_statements y log_queries_not_using_indexes.

La variable de sistema log-slow-queries nos permite indicar la localización donde se guardarán las consultas. En caso de que necesitar un fichero de log personalizado lo crearemos y le asignaremos permisos de usuario y grupo mysql.

Para finalizar reinicamos el servicio MySQL

Monitorización y Análisis

Para analizar las consultas lentas en tiempo real podemos ejecutar desde shell.

Para analizar el fichero también podemos usar el comando mysqldumpslow que permite visualizar un resumen de las consultas

Para chequear más opciones del comando mysqldumpslow haz clic aquí.

Referencias consultadas

Deja una respuesta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.