MySQL habilitar log slow queries para tu base de datos

MySQL habilitar log slow queries para tu base de datos

MySQL dispone de la opción “Slow Query Log”, esta opción nos permite registrar todas las peticiones a la base de datos que se consideren lentas, por defecto, esta deshabilitado en la configuración de MySQL.

En este artículo vamos a aprender cómo activar esta opción y de esta manera corregir peticiones a la base de datos que pueden ocasionar que nuestro sitio web tenga una carga lenta o ejecución de código lento.

Un sitio web lento ahuyenta a nuestros visitantes e incluso puede perjudicar nuestro posicionamiento en buscadores.

Para comenzar debemos comprobar las variables configuradas en el servidor de base de datos para asegurarnos el estado actual de la configuración.

Revisando las variables de MySQL

Para revisar el estado de las variables escribimos lo siguiente:

shell> mysql
mysql> show variables;

Como resultado tendremos la lista de todas las variables en MySQL, buscamos la línea:

log_slow_queries

El estado seguramente está en Off, caso contrario ya lo tienes activado y no necesitas seguir este tutorial.

Para continuar debes salir de mysql y volver al shell

mysql> exit

Activando log slow queries

Para activar log_slow_queries debemos modificar nuestro archivo my.cnf ubicado en /etc/mysql/my.cnf o en el caso de un VPS en /etc/my.cnf

Desde el shell:

shell> nano /etc/mysql/my.cnf

Agregaremos estas líneas:

[mysqld]
set-variable=long_query_time= 5
log-slow-queries=/var/log/mysql/log-slow-queries.log

Nota: set-variable=long_query_time= 5 registrará todas las peticiones que tomen más de 5 segundos en ser completadas.

Salvamos los cambios y ahora tenemos que crear el archivo donde guardaremos el log o registro de peticiones lentas, par ello:

mkdir /var/log/mysql
touch /var/log/mysql/log-slow-queries.log
chown mysql.mysql -R /var/log/mysql

Para finalizar último debemos reiniciar el servicio MySQL:

shell> service mysql restart

Puedes revisar el estado de log_slow_queries desde MySQL como lo hicimos al comienzo del tutorial.

Para revisar los logs simplemente debes ejecutar desde la línea de comandos el siguiente código:

shell> cat /var/log/mysql/log-slow-queries.log

Tienes problemas de carga con tu servidor? Podemos ayudarte, revisa nuestros planes de VPS Hosting o servidores dedicados nuestro soporte técnico especializado te sorprenderá!

Comentar