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
Logga in på Azure-portalen.
Välj din flexibla Azure Database for MySQL-serverinstans.
Välj Serverparametrar under Inställningar i den vänstra rutan.
För parametern slow_query_log väljer du PÅ.
De andra parametrarna, till exempel long_query_time och log_slow_admin_statements, finns i dokumentationen för långsamma frågeloggar.
Välj Spara.
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.
Välj Diagnostikinställningar under Övervakning i den vänstra rutan.
I fönstret Diagnostikinställningar väljer du Lägg till diagnostikinställning.
I rutan Namn anger du ett namn för diagnostikinställningen.
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.
Under Logg väljer du kryssrutan MySqlSlowLogs för loggtypen.
När du har konfigurerat datamottagare att skicka de långsamma frågeloggarna till väljer du Spara.
Visa frågeinsikter med hjälp av Log Analytics
I Log Analytics går du till den vänstra rutan under Övervakning och väljer Loggar.
Stäng fönstret Frågor som öppnas.
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
Välj tidsintervallet och kör sedan frågan. Resultatet visas i följande bild:
Visa frågeinsikter med hjälp av arbetsböcker
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.
Välj mallen Query Performance Insight .
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
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
- Läs mer om Azure Monitor-arbetsböcker och deras omfattande visualiseringsalternativ.
- Läs mer om långsamma frågeloggar.