Zelfstudie: Inzicht in queryprestaties voor Azure Database for MySQL - Flexibele server

VAN TOEPASSING OP: Azure Database for MySQL - Flexibele server

Query Performance Insight stelt voor om intelligente queryanalyses voor databases te bieden. De meest voorkeursinzichten zijn de workloadpatronen en de langer uitgevoerde query's. Als u deze inzichten begrijpt, kunt u vinden welke query's u kunt optimaliseren om de algehele prestaties te verbeteren en uw beschikbare resources efficiënt te gebruiken.

Query Performance Insight is ontworpen om u te helpen minder tijd te besteden aan het oplossen van problemen met databaseprestaties door informatie zoals:

  • Top N langlopende query's en hun trends.
  • De querydetails: bekijk de uitvoeringsgeschiedenis met minimale, maximale, gemiddelde en standaarddeviatiequerytijd.
  • Het resourcegebruik (CPU, geheugen en opslag).

In dit artikel wordt beschreven hoe u trage querylogboeken van azure Database for MySQL flexibele servers, het hulpprogramma Log Analytics en werkmappen gebruikt om Query Performance Insight te visualiseren voor flexibele Azure Database for MySQL-server.

In deze zelfstudie leert u het volgende:

  • Logboeken voor langzame query's configureren met behulp van De Azure-portal of de Azure CLI
  • Diagnostische gegevens instellen
  • Logboeken met trage query's weergeven met behulp van Log Analytics
  • Logboeken met trage query's weergeven met behulp van werkmappen

Vereisten

Logboeken voor langzame query's configureren met behulp van Azure Portal

  1. Meld u aan bij de Azure-portal.

  2. Selecteer uw exemplaar van flexibele Azure Database for MySQL-server.

  3. Selecteer serverparameters in het linkerdeelvenster onder Instellingen.

    Screenshot showing the 'Server parameters' list.

  4. Selecteer AAN voor de parameter slow_query_log.

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

  5. Raadpleeg de documentatie voor langzame querylogboeken voor de andere parameters, zoals long_query_time en log_slow_admin_statements.

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

  6. Selecteer Opslaan.

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

U kunt teruggaan naar de lijst met logboeken door de pagina Serverparameters te sluiten.

Logboeken voor langzame query's configureren met behulp van de Azure CLI

U kunt ook langzame querylogboeken inschakelen en configureren voor uw azure Database for MySQL flexibele serverexemplaren vanuit de Azure CLI door de volgende opdracht uit te voeren:

Belangrijk

Om ervoor te zorgen dat de prestaties van uw flexibele Server-exemplaar van Azure Database for MySQL niet sterk worden beïnvloed, raden we u aan om alleen de gebeurtenistypen en gebruikers te registreren die vereist zijn voor uw controledoeleinden.

  • Schakel logboeken voor langzame query's in.
az mysql flexible-server parameter set \
--name slow_query_log \
--resource-group myresourcegroup \
--server-name mydemoserver \
--value ON
  • Stel long_query_time tijd in op 10 seconden. Met deze instelling worden alle query's vastgelegd die langer dan 10 seconden worden uitgevoerd. Pas deze drempelwaarde aan op basis van uw definitie voor trage query's.
az mysql server configuration set \
--name long_query_time \
--resource-group myresourcegroup \
--server mydemoserver \
--value 10

Diagnostische gegevens instellen

Logboeken met trage query's zijn geïntegreerd met diagnostische instellingen van Azure Monitor, zodat u uw logboeken kunt doorsluisen naar een van de drie gegevenssinks:

  • Een Log Analytics-werkruimte
  • Een Event Hub
  • Een opslagaccount

Notitie

U moet uw gegevenssinks maken voordat u de diagnostische instellingen configureert. U hebt toegang tot de logboeken voor langzame query's in de gegevenssinks die u hebt geconfigureerd. Het kan tot 10 minuten duren voordat de logboeken worden weergegeven.

  1. Selecteer diagnostische instellingen in het linkerdeelvenster onder Bewaking.

  2. Selecteer Diagnostische instelling toevoegen in het deelvenster Diagnostische instellingen.

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

  3. Voer in het vak Naam een naam in voor de diagnostische instelling.

  4. Geef op naar welke bestemmingen (Log Analytics-werkruimte, een Event Hub of een opslagaccount) de logboeken voor langzame query's moeten worden verzonden door de bijbehorende selectievakjes in te schakelen.

    Notitie

    Voor deze zelfstudie verzendt u de logboeken voor langzame query's naar een Log Analytics-werkruimte.

  5. Schakel onder Logboek voor het logboektype het selectievakje MySqlSlowLogs in.

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

  6. Nadat u de gegevenssinks hebt geconfigureerd om de logboeken voor langzame query's door te geven, selecteert u Opslaan.

    Screenshot of Diagnostic settings configuration options, with Save highlighted.

Query-inzichten weergeven met behulp van Log Analytics

  1. Selecteer logboeken in Log Analytics in het linkerdeelvenster onder Bewaking.

  2. Sluit het venster Query's dat wordt geopend.

    Screenshot of the Log Analytics 'Queries' pane.

  3. In het queryvenster kunt u de query schrijven die moet worden uitgevoerd. Voor het vinden van query's die langer zijn dan 10 seconden op een bepaalde server, hebben we de volgende code gebruikt:

    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. Selecteer het tijdsbereik en voer de query uit. De resultaten worden weergegeven in de volgende afbeelding:

    Screenshot of a slow query log.

Queryinzichten weergeven met behulp van werkmappen

  1. Selecteer In Azure Portal, in het linkerdeelvenster, onder Bewaking voor uw exemplaar van flexibele Azure Database for MySQL-server, Werkmappen.

  2. Selecteer de sjabloon Query Performance Insight .

    Screenshot showing all workbooks in the workbook gallery.

In de werkmap kunt u de volgende visualisaties bekijken:

  • Query laden
  • Totaal aantal actieve Verbinding maken ions
  • Trage querytrend (>querytijd van 10 seconden)
  • Trage querydetails
  • Top 5 langste query's weergeven
  • Trage query's samenvatten op minimale, maximale, gemiddelde en standaarddeviatiequerytijd

Screenshot showing two long queries.

Notitie

  • Als u het resourcegebruik wilt weergeven, kunt u de overzichtssjabloon gebruiken.
  • U kunt deze sjablonen ook bewerken en aanpassen aan uw vereisten. Zie Azure Workbooks voor meer informatie.
  • Voor een snelle weergave kunt u ook de werkmappen of Log Analytics-query vastmaken aan uw dashboard. Zie Een dashboard maken in Azure Portal voor meer informatie.

In Query Performance Insight zijn twee metrische gegevens waarmee u potentiële knelpunten kunt vinden: duur en aantal uitvoeringen. Langlopende query's hebben het grootste potentieel voor het langer vergrendelen van resources, het blokkeren van andere gebruikers en het beperken van schaalbaarheid.

In sommige gevallen kan een hoog aantal uitvoeringen leiden tot meer netwerkrondes. Retouren zijn van invloed op de prestaties. Ze zijn onderhevig aan netwerklatentie en downstreamserverlatentie. Het aantal uitvoeringen kan dus helpen om regelmatig uitgevoerde query's ('chatty') te vinden. Deze query's zijn de beste kandidaten voor optimalisatie.

Volgende stappen