Jak pokazać uruchomione procesy MySQL

Jak Pokazac Uruchomione Procesy Mysql



Możliwe jest wystąpienie przypadku, w którym na serwerze MySQL działa wiele wątków. Wśród tych wątków bezczynne mogą powodować błąd na serwerze MySQL, chyba że możesz wyświetlić uruchomione procesy i zabić te, których obecnie nie potrzebujesz.

MySQL to relacyjny DBMS, który oferuje użytkownikom różne opcje wyświetlania uruchomionych procesów. Wyjaśnimy, jak pokazać uruchomione procesy MySQL.







Identyfikacja procesów MySQL

Gdy masz bazę danych MySQL na swoim serwerze, od czasu do czasu możesz potrzebować sprawdzić jej status, aby sprawdzić, ile ma obciążenia. Kiedy zauważysz opóźnienia lub problemy z różnymi zapytaniami w bazie danych MySQL, oznacza to, że możesz mieć nadmierne i bezczynne wątki.



Dlatego zrozumienie, które wątki powodują problemy i jak można zminimalizować obciążenie, jest przydatne. Dzięki MySQL możesz użyć różnych opcji do analizy uruchomionych procesów. Omówimy dwie opcje, które pomogą pokazać procesy MySQL.



Metoda 1: za pomocą polecenia Pokaż listę procesów

Gdy uzyskujesz dostęp do MySQL z wiersza poleceń, możesz użyć polecenia SHOW PROCESSLIST, aby wyświetlić informacje dotyczące wszystkich uruchomionych procesów na serwerze MySQL. Po uruchomieniu daje serwerowi migawkę różnych połączeń i ich informacji, takich jak stan, czas itp.





Poniżej znajduje się polecenie do wykonania:

POKAŻ LISTA PROCESÓW;

Zwróć uwagę na różne kolumny z danych wyjściowych. Omówmy pokrótce każdy z nich:



  1. ID – Wyświetla identyfikator procesu uruchomionego procesu. W przypadku wielu uruchomionych procesów, każdy ma swój unikalny identyfikator.
  2. Użytkownik – Reprezentuje użytkownika, który jest powiązany z danym wątkiem.
  3. Gospodarz – Pokazuje hosta, do którego podłączony jest konkretny klient. Jest to nazwa hosta konkretnego klienta, który wydał oświadczenie.
  4. DB – Jeśli wybrano bazę danych dla określonego wątku, pojawi się ona w kolumnie DB. Jeśli pokazuje NULL, nie wybrano żadnej bazy danych.
  5. Komenda – Pokazuje polecenie wykonywane przez wątek.
  6. Czas – W przypadku konkretnego wątku ta kolumna informuje, jak długo wątek znajduje się w bieżącym stanie.
  7. Państwo – Pokazuje, w jakim stanie lub zdarzeniu znajduje się wątek.
  8. Informacje – Pokazuje, jaką instrukcję aktualnie wykonuje wątek.

W tym przypadku poprzedni wynik jest wynikiem polecenia SHOW PROCESSLIST. Wynik jest wyświetlany w formie tabelarycznej. Załóżmy, że chcesz wyświetlić te same wyniki, ale w pionie. Zamiast tego możesz użyć następującego polecenia:

POKAŻ LISTA PROCESÓW\G;

Opcjonalnie dołącz [FULL] do polecenia, aby upewnić się, że nie przegapisz żadnego uruchomionego procesu.

Metoda 2: za pomocą opcji INFORMATION_SCHEMA.PROCESSLIST

MySQL ma tabelę INFORMATION_SCHEMA.PROCESSLIST, która zawiera listę wszystkich aktywnych połączeń, które idą do jego serwera. Uzyskując dostęp do tej tabeli, uzyskujesz szczegółowe informacje o wszystkich aktywnych połączeniach, aby poznać ich hosta, identyfikator procesu, stan, polecenie itp., które są podobne do tych, które uzyskujesz za pomocą polecenia SHOW PROCESSLIST.

Oto polecenie do wykonania:

WYBIERZ * Z INFORMATION_SCHEMA.PROCESSLIST;

Po wykonaniu polecenia otrzymasz wynik podobny do poniższego, który pokazuje wszystkie szczegóły uruchomionych procesów MySQL:

Jak zabić działające procesy MySQL

Załóżmy, że masz problem z uruchomionymi procesami. Możesz zabić dowolny bezczynny proces, aby skrócić czas ładowania serwera i zwiększyć wydajność. Pierwszym zadaniem jest zidentyfikowanie identyfikatora konkretnego wątku. Podaliśmy dwie metody znajdowania identyfikatora dowolnego wątku.

Po uzyskaniu identyfikatora możesz wykonać polecenie „kill” z następującą składnią:

KILL ;

Po wykonaniu polecenia otrzymasz dane wyjściowe pomyślnego wyniku, które pokazują wiersz, którego dotyczy problem, a zapytanie zostanie rozłączone z serwerem. W ten sposób zabijasz proces MySQL.

Wniosek

MySQL oferuje dwa sposoby wyświetlania uruchomionych procesów. Omówiliśmy obie opcje, podaną składnię i przykładowe polecenie, aby pomóc Ci zrozumieć MySQL SHOW PROCESSLIST. Mimo to widzieliśmy, jak można zabić działający proces. Mamy nadzieję, że teraz rozumiesz, jak działa MySQL SHOW PROCESSLIST.