Página principal » cómo » Monitorear todas las consultas SQL en MySQL

    Monitorear todas las consultas SQL en MySQL

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

    Habiendo cambiado a usar 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 tendremos que hacer es activar el registro de consultas en MySQL. Tenga en cuenta que esto solo debe hacerse en el desarrollo ... realmente ralentiza las cosas para registrar cada consulta en un archivo.

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

    #
    # * Registro y replicación
    #
    # Ambas ubicaciones son rotadas por el cronjob.
    # Tenga en cuenta que este tipo de registro es un asesino de rendimiento.

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

    Simplemente descomente la variable "log" para activar el registro. Reinicie MySQL con este comando:

    sudo /etc/init.d/mysql restart

    Ahora estamos listos para comenzar a monitorear las consultas a medida que llegan. Abra un nuevo terminal y ejecute este comando para desplazarse por el archivo de registro, ajustando la ruta si es necesario.

    cola -f /var/log/mysql/mysql.log

    Ahora ejecuta tu aplicación. Verás que las consultas de la base de datos comienzan a volar en tu ventana de terminal. (Asegúrate de que tienes el desplazamiento y el historial habilitado en el terminal)

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