Supervisar todas las consultas SQL en MySQL

Supervisar todas las consultas SQL en MySQL

SQL Server de Microsoft tiene una herramienta llamada Profiler que puede usar para monitorear cada consulta SQL que llega a la base de datos. Esto es extremadamente útil tanto para los programadores como para los administradores de bases de datos para resolver las consultas exactas generadas por una aplicación.

Habiendo cambiado al uso de MySQL con frecuencia, esta fue una de las primeras cosas que quise averiguar cómo hacerlo. ¿De qué otra manera puede ver el código SQL real generado por WordPress o phpBB?

Lo primero que debe hacer es habilitar el registro de consultas en MySQL. Tenga en cuenta que esto solo debe hacerse en desarrollo … realmente ralentiza las cosas para guardar cada solicitud en un archivo.

Busque y abra su archivo de configuración de MySQL, normalmente /etc/mysql/my.cnf en Ubuntu. Busque la sección que dice «Registro y replicación»

#
# * Registro y replicación
#
# El cronjob rota ambas ubicaciones.
# Tenga en cuenta que este tipo de registro es un asesino del rendimiento.

log = /var/log/mysql/mysql.log

Simplemente elimine el comentario de la variable «log» para habilitar el registro. Reinicie MySQL con este comando:

sudo /etc/init.d/mysql reiniciar

Ahora estamos listos para comenzar a monitorear las solicitudes a medida que ingresan. Abra una nueva terminal y ejecute este comando para desplazarse por el archivo de registro, ajustando la ruta si es necesario.

tail -f /var/log/mysql/mysql.log

Ahora inicie su aplicación. Verá que las consultas de la base de datos comienzan a desplazarse en la ventana de su terminal. (asegúrese de que el desplazamiento y el historial estén habilitados en la terminal)

Estoy impresionado, phpbb3 tiene un código SQL bastante ajustado y optimizado. WordPress, por otro lado, es muy ineficiente.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Experto Geek - Tu Guía en Tendencias Tecnológicas