Udostępnij za pośrednictwem


Samouczek: szczegółowe informacje o wydajności zapytań dla usługi Azure Database for MySQL — serwer elastyczny

DOTYCZY: Azure Database for MySQL — serwer elastyczny

Analiza wydajności zapytań proponuje zapewnienie inteligentnej analizy zapytań dla baz danych. Najbardziej preferowanymi szczegółowymi informacjami są wzorce obciążeń i dłuższe zapytania. Zrozumienie tych szczegółowych informacji może pomóc w znalezieniu zapytań, które mają być zoptymalizowane pod kątem ogólnej wydajności i efektywnego korzystania z dostępnych zasobów.

Szczegółowe informacje o wydajności zapytań zostały zaprojektowane w celu ułatwienia poświęcania mniejszego czasu na rozwiązywanie problemów z wydajnością bazy danych, udostępniając takie informacje jak:

  • Pierwsze N długotrwałych zapytań i ich trendów.
  • Szczegóły zapytania: wyświetl historię wykonywania z minimalnym, maksymalnym, średnim i standardowym czasem zapytania o odchylenie.
  • Wykorzystanie zasobów (procesor CPU, pamięć i magazyn).

W tym artykule omówiono sposób używania dzienników wolnych zapytań serwera elastycznego usługi Azure Database for MySQL, narzędzia usługi Log Analytics i szablonów skoroszytów w celu wizualizacji szczegółowych informacji o wydajności zapytań dla serwera elastycznego usługi Azure Database for MySQL.

Z tego samouczka dowiesz się, jak wykonywać następujące czynności:

  • Konfigurowanie dzienników wolnych zapytań przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure
  • Konfigurowanie diagnostyki
  • Wyświetlanie dzienników wolnych zapytań przy użyciu usługi Log Analytics
  • Wyświetlanie dzienników wolnych zapytań przy użyciu skoroszytów

Wymagania wstępne

Konfigurowanie dzienników wolnych zapytań przy użyciu witryny Azure Portal

  1. Zaloguj się w witrynie Azure Portal.

  2. Wybierz wystąpienie serwera elastycznego usługi Azure Database for MySQL.

  3. W okienku po lewej stronie w obszarze Ustawienia wybierz pozycję Parametry serwera.

    Zrzut ekranu przedstawiający listę

  4. Dla parametru slow_query_log wybierz pozycję .

    Zrzut ekranu przedstawiający parametr

  5. Inne parametry, takie jak long_query_time i log_slow_admin_statements, można znaleźć w dokumentacji dzienników wolnych zapytań.

    Zrzut ekranu przedstawiający zaktualizowane wartości pozostałych parametrów związanych z dziennikami wolnych zapytań.

  6. Wybierz pozycję Zapisz.

    Zrzut ekranu przedstawiający przycisk Zapisz w celu zapisania zmian w wartościach parametrów.

Możesz wrócić do listy dzienników, zamykając stronę Parametry serwera.

Konfigurowanie dzienników wolnych zapytań przy użyciu interfejsu wiersza polecenia platformy Azure

Alternatywnie możesz włączyć i skonfigurować dzienniki wolnych zapytań dla wystąpienia serwera elastycznego usługi Azure Database for MySQL z poziomu interfejsu wiersza polecenia platformy Azure, uruchamiając następujące polecenie:

Ważne

Aby upewnić się, że wydajność wystąpienia serwera elastycznego usługi Azure Database for MySQL nie ma znacznego wpływu, zalecamy rejestrowanie tylko typów zdarzeń i użytkowników wymaganych do celów inspekcji.

  • Włącz dzienniki wolnych zapytań.
az mysql flexible-server parameter set \
--name slow_query_log \
--resource-group myresourcegroup \
--server-name mydemoserver \
--value ON
  • Ustaw long_query_time czas na 10 sekund. To ustawienie spowoduje zarejestrowanie wszystkich zapytań wykonywanych przez ponad 10 sekund. Dostosuj ten próg na podstawie definicji dla wolnych zapytań.
az mysql server configuration set \
--name long_query_time \
--resource-group myresourcegroup \
--server mydemoserver \
--value 10

Konfigurowanie diagnostyki

Dzienniki wolnych zapytań są zintegrowane z ustawieniami diagnostycznymi usługi Azure Monitor, aby umożliwić przesyłanie dzienników do dowolnego z trzech ujść danych:

  • Obszar roboczy usługi Log Analytics
  • Centrum zdarzeń
  • Konto magazynu

Uwaga

Przed skonfigurowaniem ustawień diagnostycznych należy utworzyć ujścia danych. Dostęp do dzienników wolnych zapytań można uzyskać w skonfigurowanych ujściach danych. Wyświetlenie dzienników może potrwać do 10 minut.

  1. W okienku po lewej stronie w obszarze Monitorowanie wybierz pozycję Ustawienia diagnostyczne.

  2. W okienku Ustawienia diagnostyki wybierz pozycję Dodaj ustawienie diagnostyczne.

    Zrzut ekranu przedstawiający link

  3. W polu Nazwa wprowadź nazwę ustawienia diagnostyki.

  4. Określ miejsca docelowe (obszar roboczy usługi Log Analytics, centrum zdarzeń lub konto magazynu), do których mają być wysyłane dzienniki wolnych zapytań, zaznaczając odpowiednie pola wyboru.

    Uwaga

    W tym samouczku wyślesz dzienniki wolnych zapytań do obszaru roboczego usługi Log Analytics.

  5. W obszarze Dziennik jako typ dziennika zaznacz pole wyboru MySqlSlowLogs .

    Zrzut ekranu przedstawiający okienko

  6. Po skonfigurowaniu ujścia danych do potoku dzienników wolnych zapytań wybierz pozycję Zapisz.

    Zrzut ekranu przedstawiający opcje konfiguracji ustawień diagnostycznych z wyróżnioną pozycją Zapisz.

Wyświetlanie szczegółowych informacji o zapytaniach przy użyciu usługi Log Analytics

  1. W usłudze Log Analytics w okienku po lewej stronie w obszarze Monitorowanie wybierz pozycję Dzienniki.

  2. Zamknij otwarte okno Zapytania.

    Zrzut ekranu przedstawiający okienko

  3. W oknie zapytania można napisać zapytanie do wykonania. Aby znaleźć zapytania dłuższe niż 10 sekund na określonym serwerze, użyliśmy następującego kodu:

    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. Wybierz zakres czasu, a następnie uruchom zapytanie. Wyniki są wyświetlane na poniższej ilustracji:

    Zrzut ekranu przedstawiający dziennik wolnych zapytań.

Wyświetlanie szczegółowych informacji o zapytaniach przy użyciu skoroszytów

  1. W witrynie Azure Portal w okienku po lewej stronie w obszarze Monitorowanie wystąpienia serwera elastycznego usługi Azure Database for MySQL wybierz pozycję Skoroszyty.

  2. Wybierz szablon Szczegółowe informacje o wydajności zapytań.

    Zrzut ekranu przedstawiający wszystkie skoroszyty w galerii skoroszytów.

W skoroszycie można wyświetlić następujące wizualizacje:

  • Ładowanie zapytań
  • Łączna liczba aktywnych połączeń
  • Trend wolnych zapytań (>czas zapytania 10 s)
  • Szczegóły wolnych zapytań
  • Wyświetl listę 5 najdłuższych zapytań
  • Podsumowywanie wolnych zapytań według minimalnej, maksymalnej, średniej i czasu zapytania odchylenia standardowego

Zrzut ekranu przedstawiający dwa długie zapytania.

Uwaga

  • Aby wyświetlić wykorzystanie zasobów, możesz użyć szablonu Przegląd.
  • Możesz również edytować te szablony i dostosowywać je zgodnie z wymaganiami. Aby uzyskać więcej informacji, zobacz Skoroszyty platformy Azure.
  • Aby uzyskać szybki widok, możesz również przypiąć skoroszyty lub zapytanie usługi Log Analytics do pulpitu nawigacyjnego. Aby uzyskać więcej informacji, zobacz Tworzenie pulpitu nawigacyjnego w witrynie Azure Portal.

W obszarze Szczegółowe informacje o wydajności zapytań dwie metryki, które mogą pomóc w znalezieniu potencjalnych wąskich gardeł, to czas trwania i liczba wykonań. Długotrwałe zapytania mają największy potencjał do dłuższego blokowania zasobów, blokowania innych użytkowników i ograniczania skalowalności.

W niektórych przypadkach duża liczba wykonań może prowadzić do większej liczby rund sieciowych. Rundy wpływają na wydajność. Podlegają one opóźnieniu sieci i opóźnieniu serwera podrzędnego. Dzięki temu liczba wykonań może pomóc w znalezieniu często wykonywanych zapytań ("czatty"). Te zapytania są najlepszymi kandydatami do optymalizacji.

Następne kroki