Share via


Tutorial: Información de rendimiento de consultas en el servidor flexible de Azure Database for MySQL

SE APLICA A: Azure Database for MySQL: Servidor flexible

Información de rendimiento de consultas pretende proporcionar análisis de consultas inteligente para las bases de datos. La información preferida que se extrae son los patrones de carga de trabajo y las consultas de larga duración. Comprender esta información puede ayudarle a encontrar qué consultas se deben optimizar para mejorar el rendimiento general y para usar los recursos disponibles de forma eficaz.

Información de rendimiento de consultas es una herramienta diseñada para ayudarle a dedicar menos tiempo a solucionar problemas de rendimiento de la base de datos, al proporcionar:

  • Las N principales consultas de larga duración y sus tendencias.
  • Los detalles de la consulta: se puede ver el historial de ejecución con el tiempo de consulta mínimo, máximo, promedio y la desviación estándar.
  • El uso de recursos (CPU, memoria y almacenamiento).

En este artículo se describe cómo usar los registros de consultas lentas del servidor flexible de Azure Database for MySQL, la herramienta Log Analytics y las plantillas de libros para visualizar Información de rendimiento de consultas para el servidor flexible de Azure Database for MySQL.

En este tutorial, aprenderá a:

  • Configurar los registros de consultas lentas desde Azure Portal o mediante la CLI de Azure.
  • Configuración de diagnósticos
  • Ver los registros de consultas lentas mediante Log Analytics.
  • Ver los registros de consultas lentas mediante libros.

Requisitos previos

Configuración de registros de consultas lentas mediante Azure Portal

  1. Inicie sesión en Azure Portal.

  2. Seleccione la instancia de servidor flexible de Azure Database for MySQL.

  3. En el panel izquierdo, en Configuración, seleccione Parámetros del servidor.

    Screenshot showing the 'Server parameters' list.

  4. Para el parámetro slow_query_log, seleccione ACTIVADO.

    Screenshot showing the 'slow_query_log' parameter switched to 'ON'.

  5. Para los demás parámetros, como long_query_time y log_slow_admin_statements, consulte la documentación de los registros de consultas lentas.

    Screenshot showing updated values for the remaining slow query log-related parameters.

  6. Seleccione Guardar.

    Screenshot of the 'Save' button for saving changes in the parameter values.

Para volver a la lista de registros, cierre la página Parámetros del servidor.

Configuración de registros de consultas lentas con la CLI de Azure

Como alternativa, puede habilitar y configurar registros de consultas lentas para la instancia de servidor flexible de Azure Database for MySQL desde la CLI de Azure mediante la ejecución del comando siguiente:

Importante

Para asegurarse de que el rendimiento de la instancia de servidor flexible de Azure Database for MySQL no se ve muy afectado, se recomienda registrar solo los tipos de eventos y los usuarios necesarios para fines de auditoría.

  • Habilite los registros de consultas lentas.
az mysql flexible-server parameter set \
--name slow_query_log \
--resource-group myresourcegroup \
--server-name mydemoserver \
--value ON
  • Establezca long_query_time tiempo en 10 segundos. Esta configuración registrará todas las consultas que se ejecutan durante más de 10 segundos. Ajuste este umbral en función de la definición de las consultas lentas.
az mysql server configuration set \
--name long_query_time \
--resource-group myresourcegroup \
--server mydemoserver \
--value 10

Configuración de diagnósticos

Los registros de consultas lentas se integran con la configuración de diagnóstico de Azure Monitor para permitirle canalizar sus registros a cualquiera de los tres receptores de datos:

  • Un área de trabajo de Log Analytics
  • Un centro de eventos
  • Una cuenta de almacenamiento

Nota

Debe crear los receptores de datos antes de realizar la configuración de diagnóstico. Puede acceder a los registros de consultas lentas de los receptores de datos que ha configurado. Los registros pueden tardar hasta 10 minutos en aparecer.

  1. En el panel de la izquierda, seleccione Configuración de diagnóstico en Supervisión.

  2. En el panel Configuración de diagnóstico, seleccione Agregar configuración de diagnóstico.

    Screenshot of the 'Add diagnostic setting' link on the 'Diagnostic settings' pane.

  3. En el cuadro Nombre, escriba un nombre para la configuración de diagnóstico.

  4. Especifique los destinos (área de trabajo de Log Analytics, un centro de eventos o una cuenta de almacenamiento) a los que enviar los registros de consultas lentas; para ello, active sus casillas correspondientes.

    Nota

    En este tutorial, enviará los registros de consultas lentas a un área de trabajo de Log Analytics.

  5. En Registro, como tipo de registro, active la casilla MySqlSlowLogs.

    Screenshot of the 'Diagnostics settings' pane for selecting configuration options.

  6. Una vez que haya configurado los receptores de datos a los que canalizar los registros de consultas lentas, seleccione Guardar.

    Screenshot of Diagnostic settings configuration options, with Save highlighted.

Visualización de la información de consulta mediante Log Analytics

  1. En el panel izquierdo de Log Analytics, en Supervisión, seleccione Registros.

  2. Cierre la ventana Consultas que se abre.

    Screenshot of the Log Analytics 'Queries' pane.

  3. En la ventana de consulta, puede escribir la consulta que se va a ejecutar. Para buscar consultas de más de 10 segundos en un servidor determinado, se ha usado el código siguiente:

    AzureDiagnostics
       | where Category == 'MySqlSlowLogs'
       | project TimeGenerated, LogicalServerName_s, event_class_s, start_time_t , query_time_d, sql_text_s 
       | where query_time_d > 10
    
  4. Seleccione el intervalo de tiempo y ejecute la consulta. Los resultados se muestran en la imagen siguiente:

    Screenshot of a slow query log.

Visualización de la información de consulta mediante libros

  1. En Azure Portal, en el panel izquierdo, en Supervisión de la instancia de servidor flexible de Azure Database for MySQL, seleccione Libros.

  2. Seleccione la plantilla Información de rendimiento de consultas.

    Screenshot showing all workbooks in the workbook gallery.

En el libro, puede observar las visualizaciones siguientes:

  • Carga de consultas
  • Conexiones activas totales
  • Tendencia de consultas lentas (Tiempo de consulta > 10 segundos)
  • Detalles de la consulta lenta
  • Lista de las 5 consultas de mayor duración
  • Resuma las consultas lentas por tiempo de consulta mínimo, máximo, promedio y de desviación estándar.

Screenshot showing two long queries.

Nota:

  • Para ver el uso de recursos, puede utilizar la plantilla Información general.
  • También puede editar estas plantillas y personalizarlas según sus necesidades. Para obtener más información, consulte Libros de Azure.
  • Para obtener una vista rápida, también puede hacer anclar los libros o la consulta de Log Analytics al panel. Para más información, consulte Creación de un panel en Azure Portal.

En Información de rendimiento de consultas, hay dos métricas que pueden ayudarle a detectar posibles cuellos de botella: duración y recuento de ejecuciones. Las consultas de larga ejecución tienen el máximo potencial para bloquear recursos durante más tiempo, bloquear otros usuarios y limitar la escalabilidad.

En algunos casos, un recuento de ejecuciones alto puede provocar más recorridos de ida y vuelta de red. Los recorridos de ida y vuelta afectan al rendimiento. Están sujetos a la latencia de red y a la latencia del servidor que sigue en la cadena. Por lo tanto, el recuento de ejecuciones puede ayudar a encontrar consultas ejecutadas con frecuencia. Estas consultas son las mejores candidatas para la optimización.

Pasos siguientes