sql >> Base de Datos >  >> RDS >> Mysql

Cómo habilitar el registro de consultas lentas en MySQL

Este artículo describe cómo habilitar el registro de consultas lentas de MySQL. Puede utilizar el registro de consultas lentas para ayudar a determinar qué consultas de la base de datos tardan mucho tiempo en ejecutarse.

Este artículo solo se aplica a los productos enumerados en los Detalles del artículo barra lateral Debe tener acceso raíz al servidor para seguir estos procedimientos. Si tiene un VPS administrado o un servidor dedicado administrado (y no tiene acceso raíz) y desea habilitar el registro de consultas lentas, abra un ticket en el Portal del cliente en https://my.a2hosting.com.

Habilitación del registro de consultas lentas

Las consultas lentas pueden afectar el rendimiento de la base de datos y el rendimiento general del servidor. La función de registro de consultas lentas en MySQL le permite registrar consultas que exceden un límite de tiempo predefinido. Esto simplifica enormemente la tarea de encontrar consultas ineficientes o que consumen mucho tiempo.

Para habilitar el registro de consultas lentas en MySQL, siga estos pasos:

  1. Inicie sesión en su servidor usando SSH.
  2. En la línea de comandos, escriba el siguiente comando:
    mysql -u root -p
  3. Escriba la contraseña raíz de MySQL.
  4. Para habilitar el registro de consultas lentas, escriba el siguiente comando en el indicador mysql>:

    SET GLOBAL slow_query_log = 'ON';
  5. Hay opciones adicionales que puede configurar para el registro de consultas lentas:

    • De forma predeterminada, cuando el registro de consultas lentas está habilitado, registra cualquier consulta que tarde más de 10 segundos en ejecutarse. Para cambiar este intervalo, escriba el siguiente comando, reemplazando X con el tiempo en segundos:
      SET GLOBAL long_query_time = X;
    • De forma predeterminada, el archivo de registro de consultas lentas se encuentra en /var/lib/mysql/hostname-slow.log . Para cambiar la ruta de registro o el nombre de archivo, escriba el siguiente comando, reemplazando ruta con la ruta al archivo y filename con el nombre del archivo de registro:

      SET GLOBAL slow_query_log_file = '/path/filename';
  6. Para verificar que el registro de consultas lentas funciona correctamente, cierre sesión en mysql y luego vuelva a iniciar sesión. (Esto vuelve a cargar las variables de sesión para mysql programa.) Escriba el siguiente comando, reemplazando X con un valor mayor que el long_query_time entorno:

    SELECT SLEEP(X);

    El archivo de registro de consultas lentas debe contener información sobre la consulta.

  7. Continúe supervisando el archivo de registro de consultas lentas para ver qué consultas tardan más en ejecutarse.
  8. Cuando haya terminado de solucionar el problema, deshabilite el registro de consultas lentas. Para hacer esto, ejecute mysql programe de nuevo y luego escriba el siguiente comando:

    SET GLOBAL slow_query_log = 'OFF';
    Solo debe habilitar el registro de consultas lentas durante el tiempo que sea necesario para solucionar problemas de rendimiento.

Más Información

Para obtener más información sobre el registro de consultas lentas de MySQL, visite https://dev.mysql.com/doc/refman/5.5/en/slow-query-log.html.