Udostępnij za pośrednictwem


Monitorowanie usługi Azure Database for MySQL — serwer elastyczny

Uwaga

Ten artykuł zawiera odwołania do terminu slave (element podrzędny), który nie jest już używany przez firmę Microsoft. Po usunięciu terminu z oprogramowania usuniemy go z tego artykułu.

Serwer elastyczny usługi Azure Database for MySQL zapewnia monitorowanie serwerów za pośrednictwem usługi Azure Monitor. Monitorowanie danych dotyczących serwerów ułatwia rozwiązywanie problemów i optymalizowanie pod kątem obciążenia.

W tym artykule przedstawiono różne dostępne metryki i dzienniki serwera dla serwera elastycznego, które zapewniają wgląd w jego zachowanie.

Metryki

Metryki to wartości liczbowe, które opisują jakiś aspekt zasobów serwera w określonym czasie. Monitorowanie zasobów serwera ułatwia rozwiązywanie problemów i optymalizowanie obciążenia, umożliwiając monitorowanie najważniejszych elementów. Monitorowanie odpowiednich metryk pomaga zachować wydajność, niezawodność i dostępność serwera i aplikacji.

Usługa Azure Database for MySQL — elastyczny serwer udostępnia różne metryki, które ułatwiają zrozumienie wydajności obciążenia. Na podstawie tych danych możesz zrozumieć wpływ na serwer i aplikację.

Wszystkie metryki platformy Azure mają częstotliwość jedną minutę, z których każda zapewnia 30 dni historii. Można skonfigurować alerty dotyczące metryk. Zobacz Konfigurowanie alertów dotyczących metryk dla usługi Azure Database for MySQL — serwer elastyczny. Inne zadania obejmują konfigurowanie zautomatyzowanych akcji, wykonywanie zaawansowanych analiz i historię archiwizacji. Aby uzyskać więcej informacji, zobacz Omówienie metryk platformy Azure.

Rozwiązywanie problemów z metrykami

Czasami mogą wystąpić problemy z tworzeniem, dostosowywaniem lub interpretowaniem wykresów w Eksploratorze metryk platformy Azure.
Wykres pokazujący, że żadne dane nie mogą powstać z powodu różnych czynników. Mogą one obejmować dostawcę zasobów usługi Microsoft Insights, który nie jest zarejestrowany dla Twojej subskrypcji, lub brak odpowiednich praw dostępu do usługi Azure Database for MySQL — serwer elastyczny. Inne możliwości mogą być następujące: zasób nie wygenerował metryk w wybranym przedziale czasu lub wybrany zakres czasu przekracza 30 dni.

Kilka powodów, które należy wykonać, może spowodować to zachowanie:

  • Dostawca zasobów Microsoft.Insights nie jest zarejestrowany: eksplorowanie metryk wymaga dostawcy zasobów Microsoft.Insights zarejestrowanego w subskrypcji. Zarejestruj serwer ręcznie, wykonując kroki opisane w temacie Dostawcy zasobów i typy platformy Azure.
  • Niewystarczające prawa dostępu do zasobu: upewnij się, że masz wystarczające uprawnienia dla usługi Azure Database for MySQL — serwer elastyczny, z którego eksplorujesz metryki. Zasób nie emituje metryk w wybranym zakresie czasu. Zmień czas wykresu na szerszy zakres. Na platformie Azure kontrola dostępu oparta na rolach (RBAC) platformy Azure kontroluje dostęp do metryk. Aby eksplorować metryki dla dowolnego zasobu, musisz być członkiem roli Czytelnik monitorowania, Współautor monitorowania lub Współautor.
  • Zasób nie emituje metryk w wybranym zakresie czasu: może to być spowodowane kilkoma przyczynami. Jedną z możliwości jest to, że zasób nie wygenerował metryk w wybranym przedziale czasu. Zmień czas wykresu na szerszy zakres, aby sprawdzić, czy to rozwiąże problem. Aby uzyskać bardziej szczegółowe informacje na temat rozwiązywania tego problemu, zapoznaj się z przewodnikiem rozwiązywania problemów z metrykami usługi Azure Monitor.
  • Zakres czasu większy niż 30 dni: sprawdź, czy różnica między datami rozpoczęcia i zakończenia w selektorze czasu nie przekracza interwału 30-dniowego. Aby uzyskać bardziej szczegółowe informacje na temat metryk rozwiązywania problemów, zapoznaj się z przewodnikiem rozwiązywania problemów z metrykami usługi Azure Monitor.
  • Wskazanie linii kreskowanej: w usłudze Azure Monitor linia przerywana oznacza lukę w danych lub "wartość null" między dwoma punktami znanych danych ziarna czasu. Jest to celowy projekt, który pomaga wykrywać brakujące punkty danych. Jeśli na wykresie są wyświetlane linie kreskowane, oznacza to brak danych. Aby uzyskać więcej informacji, zapoznaj się z dokumentacją .

Aby uzyskać bardziej szczegółowe informacje na temat metryk rozwiązywania problemów, zapoznaj się z przewodnikiem rozwiązywania problemów z metrykami usługi Azure Monitor.

Uwaga

Metryki oznaczone jako przestarzałe mają zostać usunięte z witryny Azure Portal. Te metryki należy zignorować podczas monitorowania serwera elastycznego usługi Azure Database for MySQL.

Lista metryk

Te metryki są dostępne dla usługi Azure Database for MySQL — serwer elastyczny:

Nazwa wyświetlana metryki Metric Jednostka opis
Czas działania bazy danych MySQL Uptime Sekundy Ta metryka wskazuje czas działania serwera MySQL.
Procent procesora CPU hosta cpu_percent Procent Procent procesora CPU hosta to całkowite wykorzystanie procesora CPU do przetwarzania wszystkich zadań na serwerze w wybranym okresie. Ta metryka obejmuje obciążenie wystąpienia serwera elastycznego usługi Azure Database for MySQL i procesu usługi Azure MySQL. Wysoki procent procesora CPU może pomóc w znalezieniu, czy serwer bazy danych ma większe obciążenie, niż może obsłużyć. Ta metryka jest równoważna całkowitemu wykorzystaniu procesora CPU i jest podobna do użycia procesora CPU na dowolnej maszynie wirtualnej.
Wykorzystanie środków na użycie procesora CPU cpu_credits_consumed Count Dotyczy to tylko środków na użycie procesora CPU z możliwością rozszerzenia na podstawie obciążenia. Aby uzyskać więcej informacji, zobacz Rozmiary maszyn wirtualnych z serii B.
Pozostałe środki na użycie procesora CPU cpu_credits_remaining Count Jest to przeznaczone dla warstwy z możliwością skalowania Tylko pozostałe procesory są obliczane na podstawie obciążenia. Aby uzyskać więcej informacji, zobacz Rozmiary maszyn wirtualnych z serii B.
Sieć hosta w network_bytes_ingress Bajty Łączna suma przychodzącego ruchu sieciowego na serwerze przez wybrany okres. Ta metryka obejmuje ruch do bazy danych i funkcji serwera elastycznego usługi Azure Database for MySQL, takich jak monitorowanie, dzienniki itp.
Sieć hosta wychodząca network_bytes_egress Bajty Łączna suma wychodzącego ruchu sieciowego na serwerze przez wybrany okres. Ta metryka obejmuje ruch z bazy danych i funkcji serwera elastycznego usługi Azure Database for MySQL, takich jak monitorowanie, dzienniki itp.
Aktywne połączenia active_connection Count Liczba aktywnych połączeń z serwerem. Aktywne połączenia to łączna liczba wątków połączonych z serwerem, która obejmuje również wątki z azure_superuser.
Procent operacji we/wy magazynu io_consumption_percent Procent Procent operacji we/wy używanych w wybranym okresie. Procent operacji we/wy jest przeznaczony zarówno dla operacji we/wy odczytu, jak i zapisu na sekundę.
Liczba operacji we/wy magazynu storage_io_count Count Łączna liczba operacji we/wy serwera (zarówno odczytu, jak i zapisu) na minutę.
Procent pamięci memory_percent Procent Ta metryka reprezentuje procent pamięci zajmowanej przez proces serwera usługi Azure MySQL (mysqld). Ta metryka jest obliczana na podstawie łącznego rozmiaru pamięci (GB) dostępnego na serwerze elastycznym usługi Azure Database for MySQL.
Łączna liczba połączeń total_connections Count Liczba połączeń klienta z wystąpieniem serwera elastycznego usługi Azure Database for MySQL. Łączna liczba połączeń to suma połączeń klientów przy użyciu protokołu TCP/IP w wybranym okresie.
Przerwane połączenia aborted_connections Count Łączna liczba nieudanych prób nawiązania połączenia z wystąpieniem serwera elastycznego usługi Azure Database for MySQL, na przykład nieudane połączenie z powodu nieprawidłowych poświadczeń. Aby uzyskać więcej informacji na temat przerwanych połączeń, zobacz tę dokumentację.
Zapytania — zapytania Count Łączna liczba wykonanych zapytań na minutę na serwerze. Łączna liczba zapytań na minutę na serwerze z obciążenia bazy danych i procesów usługi Azure MySQL.
Slow_queries slow_queries Count Łączna liczba wolnych zapytań na serwerze w wybranym zakresie czasu.
Aktywne transakcje active_transactions Count Ta metryka reprezentuje łączną liczbę transakcji w programie MySQL. Aktywne transakcje obejmują wszystkie rozpoczęte transakcje, ale nie zostały jeszcze zatwierdzone lub wycofane.

Metryki podziału magazynu

Metryki podziału magazynu zapewniają cenny wgląd w użycie magazynu serwera elastycznego usługi Azure Database for MySQL. Te metryki zapewniają szczegółowy podział limitu magazynu, procent magazynu, używanego magazynu, używanego magazynu danych, używanego magazynu ibdata1, używanego magazynu binlog, innego używanego magazynu i magazynu kopii zapasowych. Monitorując te metryki, można skutecznie zarządzać zasobami magazynu, zoptymalizować alokację magazynu i zapewnić efektywne wykorzystanie pojemności magazynu serwera. Zrozumienie metryk podziału magazynu ułatwia podejmowanie świadomych decyzji dotyczących utrzymania wydajności i dostępności serwera elastycznego usługi Azure Database for MySQL.

W poniższej tabeli wymieniono metryki podziału magazynu dostępne dla serwera elastycznego usługi Azure Database for MySQL:

Nazwa wyświetlana metryki Metric Jednostka opis
Limit magazynu storage_limit Bajty Maksymalny rozmiar magazynu skonfigurowany dla tego serwera.
Procent magazynowania storage_percent Procent Procent użycia magazynu poza maksymalnym dostępnym magazynem serwera.
Używany magazyn storage_used Bajty Ilość używanego miejsca do magazynowania. Magazyn używany przez usługę może obejmować pliki bazy danych, dzienniki transakcji i dzienniki serwera.
Używany magazyn danych data_storage_used Bajty Ilość miejsca do przechowywania plików bazy danych.
Używany magazyn ibdata1 ibdata1_storage_used Bajty Ilość miejsca do przechowywania pliku systemowego tablespace (ibdata1).
Używany magazyn binlog binlog_storage_used Bajty Ilość miejsca do przechowywania plików dziennika binarnego.
Inne używane miejsce do magazynowania other_storage_used Bajty Ilość miejsca używanego dla innych składników i plików metadanych.
Używany magazyn kopii zapasowych backup_storage_used Bajty Ilość używanego magazynu kopii zapasowych.

Metryki replikacji

Metryki replikacji zapewniają cenny wgląd w wydajność i stan replikacji na serwerze elastycznym usługi Azure Database for MySQL. Te metryki umożliwiają monitorowanie opóźnienia replikacji, sprawdzanie stanu wątków repliki i wysokiej dostępności/operacji we/wy SQL oraz mierzenie opóźnienia replikacji. Śledząc te metryki, można zapewnić niezawodność i wydajność konfiguracji replikacji, zidentyfikować wszelkie potencjalne problemy lub opóźnienia oraz podjąć odpowiednie działania w celu zachowania spójności i dostępności danych. Zapoznajmy się z różnymi metrykami replikacji dostępnymi dla serwera elastycznego usługi Azure Database for MySQL.

W poniższej tabeli wymieniono metryki replikacji dostępne dla serwera elastycznego usługi Azure Database for MySQL:

Nazwa wyświetlana metryki Metric Jednostka opis
Opóźnienie replikacji replication_lag Sekundy Opóźnienie replikacji to liczba sekund za repliką podczas ponownego odtwarzania transakcji odebranych z serwera źródłowego. Ta metryka jest obliczana z "Seconds_behind_Master" z polecenia "SHOW SLAVE STATUS" i jest dostępna tylko dla serwerów repliki. Aby uzyskać więcej informacji, zobacz "Rozwiązywanie problemów z opóźnieniem replikacji w usłudze Azure Database for MySQL — serwer elastyczny"
Stan we/wy repliki replica_io_running Stan Stan we/wy repliki wskazuje stan wątku we/wy replikacji. Wartość metryki wynosi 1, jeśli wątek we/wy jest uruchamiany i 0, jeśli nie.
Stan sql repliki replica_sql_running Stan Stan sql repliki wskazuje stan wątku SQL replikacji. Wartość metryki wynosi 1, jeśli wątek SQL jest uruchomiony i 0, jeśli nie.
Stan operacji we/wy wysokiej dostępności ha_io_running Stan Stan operacji we/wy wysokiej dostępności wskazuje stan pojęć związanych z wysoką dostępnością w usłudze Azure Database for MySQL — serwer elastyczny. Wartość metryki wynosi 1, jeśli wątek we/wy jest uruchamiany i 0, jeśli nie.
Stan ha SQL ha_sql_running Stan Stan wysokiej dostępności SQL wskazuje stan pojęć związanych z wysoką dostępnością w usłudze Azure Database for MySQL — serwer elastyczny. Wartość metryki wynosi 1, jeśli wątek SQL jest uruchomiony i 0, jeśli nie.
Opóźnienie replikacji wysokiej dostępności ha_replication_lag Sekundy Opóźnienie replikacji wysokiej dostępności to liczba sekund, w których serwer rezerwowy wysokiej dostępności znajduje się w celu odtworzenia transakcji odebranych z serwera źródłowego. Ta metryka jest obliczana na podstawie polecenia "Seconds_behind_Master" z polecenia "SHOW SLAVE STATUS" i jest dostępna tylko dla serwerów rezerwowych HA.

Metryki rozszerzone

Oprócz standardowych metryk udostępnianych przez usługę Azure Database for MySQL — elastyczny serwer, dostępne są ulepszone metryki, aby uzyskać lepszy wgląd w wydajność serwera. Te ulepszone metryki zapewniają bardziej szczegółowe informacje o konkretnych aspektach obciążenia.

Statystyki DML

Metryki statystyk DML (Data Manipulation Language) zapewniają wgląd w liczbę instrukcji wyboru, aktualizacji, wstawiania i usuwania wykonywanych na serwerze. Monitorując te metryki, można śledzić użycie i wydajność operacji bazy danych oraz identyfikować potencjalne wąskie gardła lub nieefektywne.

Nazwa wyświetlana metryki Metric Jednostka opis
Com_select Com_select Count Łączna liczba instrukcji select wykonanych na serwerze w wybranym zakresie czasu.
Com_update Com_update Count Łączna liczba instrukcji aktualizacji wykonanych na serwerze w wybranym zakresie czasu.
Com_insert Com_insert Count Łączna liczba instrukcji insert wykonanych na serwerze w wybranym zakresie czasu.
Com_delete Com_delete Count Łączna liczba usuniętych instrukcji wykonanych na serwerze w wybranym zakresie czasu.

Statystyki języka DDL

Metryki statystyk języka DDL (Data Definition Language) zawierają informacje o tym, jak często można utworzyć bazę danych, usunąć bazę danych, utworzyć tabelę, usunąć tabelę i zmienić instrukcje tabeli wykonywane na serwerze. Te metryki pomagają zrozumieć częstotliwość i wpływ zmian schematu w bazie danych, co pozwala zoptymalizować projekt bazy danych i poprawić ogólną wydajność.

Nazwa wyświetlana metryki Metric Jednostka opis
Com_create_db Com_create_db Count Łączna liczba utworzonych instrukcji bazy danych wykonanych na serwerze w wybranym zakresie czasu.
Com_drop_db Com_drop_db Count Łączna liczba instrukcji upuszczania bazy danych wykonanych na serwerze w wybranym zakresie czasu.
Com_create_table Com_create_table Count Łączna liczba instrukcji tworzenia tabeli wykonanych na serwerze w wybranym zakresie czasu.
Com_drop_table Com_drop_table Count Łączna liczba instrukcji tabeli upuszczania wykonanych na serwerze w wybranym zakresie czasu.
Com_Alter Com_Alter Count Łączna liczba instrukcji alter table wykonanych na serwerze w wybranym zakresie czasu.

Metryki innodb

Metryki innodb koncentrują się na wydajności aparatu magazynu InnoDB, który jest domyślnym aparatem usługi Azure Database for MySQL — serwer elastyczny. Te metryki obejmują czas blokady wierszy InnoDB, oczekiwania blokady wierszy InnoDB, odczyty puli Innodb, żądania odczytu puli Innodb i nie tylko. Monitorując te metryki, możesz uzyskać wgląd w wydajność i skuteczność mechanizmów magazynowania i buforowania bazy danych.

Te ulepszone metryki zawierają cenne informacje na temat optymalizacji obciążenia i poprawy wydajności serwera elastycznego usługi Azure Database for MySQL. Korzystając z tych metryk, możesz podejmować decyzje oparte na danych, aby zwiększyć skalowalność, niezawodność i wydajność operacji bazy danych.

Nazwa wyświetlana metryki Metric Jednostka opis
Czas blokady wiersza bazy danych InnoDB innodb_row_lock_time Milisekundy Czas blokady wiersza innoDB mierzy czas trwania w milisekundach dla blokad na poziomie wiersza innoDB.
Oczekiwanie na blokadę wiersza bazy danych InnoDB innodb_row_lock_waits Count Metryka blokady wierszy innoDB zlicza metryki, ile razy zapytanie musiało czekać na blokadę na poziomie wiersza bazy danych InnoDB.
Innodb_buffer_pool_reads Innodb_buffer_pool_reads Count Całkowita liczba odczytów logicznych, których aparat InnoDB nie mógł spełnić z puli Innodb i musiał zostać pobrany z dysku.
Innodb_buffer_pool_read_requests Innodb_buffer_pool_read_requests Count Łączna liczba logicznych żądań odczytu do odczytu z puli Innodb.
Innodb_buffer_pool_pages_free Innodb_buffer_pool_pages_free Count Łączna liczba bezpłatnych stron w puli InnoDB.
Innodb_buffer_pool_pages_data Innodb_buffer_pool_pages_data Count Łączna liczba stron w puli InnoDB zawierającej dane. Liczba zawiera zarówno brudne, jak i czyste strony.
Innodb_buffer_pool_pages_dirty Innodb_buffer_pool_pages_dirty Count Łączna liczba stron w puli InnoDB zawierającej zanieczyszczone strony.
Długość listy historii programu MySQL trx_rseg_history_len Count Ta metryka oblicza liczbę zmian w bazie danych, w szczególności liczbę rekordów zawierających poprzednie zmiany. Jest to związane z szybkością zmian danych, co powoduje utworzenie nowych wersji wierszy. Rosnąca długość listy historii może mieć wpływ na wydajność bazy danych.
Limity czasu blokady mySQL lock_timeouts Count Ta metryka reprezentuje liczbę przypadków przekroczenia limitu czasu zapytania z powodu blokady. Zwykle występuje to, gdy zapytanie czeka na blokadę w wierszu lub tabeli przechowywanej przez inne zapytanie przez dłuższy czas niż innodb_lock_wait_timeout ustawienie.
Zakleszczenia blokady mySQL lock_deadlock Count Ta metryka reprezentuje liczbę zakleszczeń w wystąpieniu serwera elastycznego usługi Azure Database for MySQL w wybranym okresie.

Dzienniki serwera

W usłudze Azure Database for MySQL — elastyczny serwer użytkownicy mogą konfigurować i pobierać dzienniki serwera, aby ułatwić rozwiązywanie problemów. Po włączeniu tej funkcji wystąpienie serwera elastycznego usługi Azure Database for MySQL rozpoczyna przechwytywanie zdarzeń wybranego typu dziennika i zapisuje je w pliku. Następnie możesz użyć witryny Azure Portal i interfejsu wiersza polecenia platformy Azure, aby pobrać pliki do pracy z nimi. Funkcja dzienników serwera jest domyślnie wyłączona. Aby uzyskać informacje na temat włączania dzienników serwera, zobacz Włączanie i pobieranie dzienników serwera dla usługi Azure Database for MySQL — serwer elastyczny

Dzienniki serwera obsługują włączanie i pobieranie dzienników wolnych zapytań i dzienników błędów. Aby przeprowadzić analizę historyczną danych, w witrynie Azure Portal w okienku Ustawienia diagnostyki serwera dodaj ustawienie diagnostyczne w celu wysyłania dzienników do obszaru roboczego usługi Log Analytics, usługi Azure Storage lub centrów zdarzeń. Aby uzyskać więcej informacji, zobacz Konfigurowanie diagnostyki.

Przechowywanie dzienników serwera

Po włączeniu rejestrowania dla wystąpienia serwera elastycznego usługi Azure Database for MySQL dzienniki są dostępne do siedmiu dni od ich utworzenia. Jeśli całkowity rozmiar dostępnych dzienników przekracza 7 GB, najstarsze pliki zostaną usunięte do momentu udostępnienia miejsca. Limit magazynu 7 GB dla dzienników serwera jest dostępny bezpłatnie i nie można go rozszerzyć. Dzienniki są obracane co 24 godziny lub 500 MB, w zależności od tego, co nastąpi wcześniej.