Dela via


Självstudie: Query Performance Insight för Azure Database for MySQL – flexibel server

GÄLLER FÖR: Azure Database for MySQL – flexibel server

Query Performance Insight föreslår att du tillhandahåller intelligent frågeanalys för databaser. De viktigaste insikterna är arbetsbelastningsmönstren och de frågor som körs längre. Att förstå dessa insikter kan hjälpa dig att hitta vilka frågor som ska optimeras för att förbättra övergripande prestanda och använda dina tillgängliga resurser effektivt.

Query Performance Insight är utformat för att hjälpa dig att ägna mindre tid åt att felsöka databasprestanda genom att tillhandahålla sådan information som:

  • De vanligaste N-frågorna och deras trender.
  • Frågeinformationen: visa körningshistoriken med frågetid för minsta, högsta, genomsnittliga och standardavvikelse.
  • Resursanvändningen (CPU, minne och lagring).

I den här artikeln beskrivs hur du använder långsamma frågeloggar i Azure Database for MySQL, log analytics-verktyget och arbetsböcker för att visualisera Query Performance Insight för Azure Database for MySQL – flexibel server.

I den här självstudien får du lära dig att:

  • Konfigurera långsamma frågeloggar med hjälp av Azure-portalen eller Azure CLI
  • Konfigurera diagnostik
  • Visa långsamma frågeloggar med hjälp av Log Analytics
  • Visa långsamma frågeloggar med hjälp av arbetsböcker

Förutsättningar

Konfigurera långsamma frågeloggar med hjälp av Azure-portalen

  1. Logga in på Azure-portalen.

  2. Välj din flexibla Azure Database for MySQL-serverinstans.

  3. Välj Serverparametrar under Inställningar i den vänstra rutan.

    Skärmbild som visar listan

  4. För parametern slow_query_log väljer du .

    Skärmbild som visar parametern

  5. De andra parametrarna, till exempel long_query_time och log_slow_admin_statements, finns i dokumentationen för långsamma frågeloggar.

    Skärmbild som visar uppdaterade värden för återstående långsamma frågeloggrelaterade parametrar.

  6. Välj Spara.

    Skärmbild av knappen Spara för att spara ändringar i parametervärdena.

Du kan återgå till listan över loggar genom att stänga sidan Serverparametrar .

Konfigurera långsamma frågeloggar med hjälp av Azure CLI

Du kan också aktivera och konfigurera långsamma frågeloggar för din flexibla Azure Database for MySQL-serverinstans från Azure CLI genom att köra följande kommando:

Viktigt!

För att säkerställa att azure database for MySQL-instansens prestanda inte påverkas kraftigt rekommenderar vi att du endast loggar de händelsetyper och användare som krävs för dina granskningsändamål.

  • Aktivera långsamma frågeloggar.
az mysql flexible-server parameter set \
--name slow_query_log \
--resource-group myresourcegroup \
--server-name mydemoserver \
--value ON
  • Ange long_query_time tid till 10 sekunder. Den här inställningen loggar alla frågor som körs i mer än 10 sekunder. Justera det här tröskelvärdet baserat på din definition för långsamma frågor.
az mysql server configuration set \
--name long_query_time \
--resource-group myresourcegroup \
--server mydemoserver \
--value 10

Konfigurera diagnostik

Långsamma frågeloggar är integrerade med Diagnostikinställningar för Azure Monitor så att du kan skicka loggarna till någon av tre datamottagare:

  • En Log Analytics-arbetsyta
  • En händelsehubb
  • Ett lagringskonto

Kommentar

Du bör skapa dina datamottagare innan du konfigurerar diagnostikinställningarna. Du kan komma åt de långsamma frågeloggarna i de datamottagare som du har konfigurerat. Det kan ta upp till 10 minuter innan loggarna visas.

  1. Välj Diagnostikinställningar under Övervakning i den vänstra rutan.

  2. I fönstret Diagnostikinställningar väljer du Lägg till diagnostikinställning.

    Skärmbild av länken Lägg till diagnostikinställning i fönstret Diagnostikinställningar.

  3. I rutan Namn anger du ett namn för diagnostikinställningen.

  4. Ange vilka mål (Log Analytics-arbetsyta, en händelsehubb eller ett lagringskonto) som de långsamma frågeloggarna ska skickas till genom att markera motsvarande kryssrutor.

    Kommentar

    I den här självstudien skickar du de långsamma frågeloggarna till en Log Analytics-arbetsyta.

  5. Under Logg väljer du kryssrutan MySqlSlowLogs för loggtypen.

    Skärmbild av fönstret Diagnostikinställningar för att välja konfigurationsalternativ.

  6. När du har konfigurerat datamottagare att skicka de långsamma frågeloggarna till väljer du Spara.

    Skärmbild av konfigurationsalternativ för diagnostikinställningar med Spara markerat.

Visa frågeinsikter med hjälp av Log Analytics

  1. I Log Analytics går du till den vänstra rutan under Övervakning och väljer Loggar.

  2. Stäng fönstret Frågor som öppnas.

    Skärmbild av fönstret

  3. I frågefönstret kan du skriva frågan som ska köras. För att hitta frågor som är längre än 10 sekunder på en viss server har vi använt följande kod:

    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. Välj tidsintervallet och kör sedan frågan. Resultatet visas i följande bild:

    Skärmbild av en långsam frågelogg.

Visa frågeinsikter med hjälp av arbetsböcker

  1. I Den vänstra rutan i Azure-portalen går du till Övervakning för din flexibla Azure Database for MySQL-serverinstans och väljer Arbetsböcker.

  2. Välj mallen Query Performance Insight .

    Skärmbild som visar alla arbetsböcker i arbetsboksgalleriet.

I arbetsboken kan du visa följande visualiseringar:

  • Frågeinläsning
  • Totalt antal aktiva anslutningar
  • Långsam frågetrend (>10 sek frågetid)
  • Information om långsamma frågor
  • Lista de 5 längsta frågorna
  • Sammanfatta långsamma frågor efter minsta, högsta, genomsnittliga och standardavvikelsefrågetid

Skärmbild som visar två långa frågor.

Kommentar

  • Om du vill visa resursutnyttjande kan du använda mallen Översikt.
  • Du kan också redigera dessa mallar och anpassa dem efter dina behov. Mer information finns i Azure-arbetsböcker.
  • För en snabbvy kan du också fästa arbetsböckerna eller Log Analytics-frågan på instrumentpanelen. Mer information finns i Skapa en instrumentpanel i Azure-portalen.

I Query Performance Insight är två mått som kan hjälpa dig att hitta potentiella flaskhalsar varaktighet och körningsantal. Långvariga frågor har störst potential att låsa resurser längre, blockera andra användare och begränsa skalbarheten.

I vissa fall kan ett högt antal körningar leda till fler turer i nätverket. Tur och retur påverkar prestandan. De omfattas av nätverksfördröjning och nedströmsserverfördröjning. Därför kan körningsantalet hjälpa dig att hitta vanliga frågor ("chattiga") . Dessa frågor är de bästa optimeringskandidaterna.

Nästa steg