Registro de consultas lentas en Mysql (slow query)

Las consultas lentas pueden afectar el rendimiento de la base de datos, afecta el rendimiento del servidor y el rendimiento general de la aplicación

En Mariadb o Mysql, es posible registrar cuáles son las consultas a la base de datos que exceden un límite de tiempo predefinido. Esto simplifica enormemente la tarea de encontrar consultas ineficientes o que requieren mucho tiempo.

Existen dos métodos para habilitar el registro. La primera opción dentro del entorno de mysql, el cual tiene la ventaja de no ser necesario reinicio de servicio, pero no es soportado por versiones antiguas del software. El segundo, es modificar el archivo de configuración, y es soportado en la mayoría de las versiones.

Habilitar de manera temporal (Entorno Mysql)

1. Hacer loging como roor en mysql

2. Habilitar el registro

3. Establecer la cantidad de segundos. Todas las consultas que tarden más a este valor serán registradas. En este caso 3 segundos,

4. Establecer la ruta donde se escribirá el registro El usuario de base de datos debe tener permiso de escritura en el directorio.

5. Verificación. Se puede ejecutar el comando sleep, con argumento mayor al establecido.

6. Deshabilitar el registro con el comando:

Habilitar de manera permanente (Configuración).

1. Editar el archivo de configuración y agregar estas líneas en la sección [mysqld]

2. Reiniciar el servicio.

3. Probar ejecutado el sql.

4. Consultar el archivo.