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
- Utwórz wystąpienie serwera elastycznego usługi Azure Database for MySQL.
- Utwórz obszar roboczy usługi Log Analytics.
Konfigurowanie dzienników wolnych zapytań przy użyciu witryny Azure Portal
Zaloguj się w witrynie Azure Portal.
Wybierz wystąpienie serwera elastycznego usługi Azure Database for MySQL.
W okienku po lewej stronie w obszarze Ustawienia wybierz pozycję Parametry serwera.
Dla parametru slow_query_log wybierz pozycję WŁ.
Inne parametry, takie jak long_query_time i log_slow_admin_statements, można znaleźć w dokumentacji dzienników wolnych zapytań.
Wybierz pozycję Zapisz.
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.
W okienku po lewej stronie w obszarze Monitorowanie wybierz pozycję Ustawienia diagnostyczne.
W okienku Ustawienia diagnostyki wybierz pozycję Dodaj ustawienie diagnostyczne.
W polu Nazwa wprowadź nazwę ustawienia diagnostyki.
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.
W obszarze Dziennik jako typ dziennika zaznacz pole wyboru MySqlSlowLogs .
Po skonfigurowaniu ujścia danych do potoku dzienników wolnych zapytań wybierz pozycję Zapisz.
Wyświetlanie szczegółowych informacji o zapytaniach przy użyciu usługi Log Analytics
W usłudze Log Analytics w okienku po lewej stronie w obszarze Monitorowanie wybierz pozycję Dzienniki.
Zamknij otwarte okno Zapytania.
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
Wybierz zakres czasu, a następnie uruchom zapytanie. Wyniki są wyświetlane na poniższej ilustracji:
Wyświetlanie szczegółowych informacji o zapytaniach przy użyciu skoroszytów
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.
Wybierz szablon Szczegółowe informacje o wydajności zapytań.
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
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.