Hoe de lopende MySQL-processen te tonen

Hoe De Lopende Mysql Processen Te Tonen



Het is mogelijk dat er meerdere threads op uw MySQL-server draaien. Onder deze threads kunnen de inactieve threads een fout veroorzaken op uw MySQL-server, tenzij u de lopende processen kunt bekijken en de processen kunt doden die u momenteel niet nodig hebt.

MySQL is een relationeel DBMS dat gebruikers verschillende opties biedt om de lopende processen weer te geven. We leggen uit hoe u de lopende MySQL-processen kunt weergeven.







Identificatie van de MySQL-processen

Als u een MySQL-database op uw server heeft, kan het zijn dat u af en toe de status ervan moet controleren om te controleren hoeveel belasting deze heeft. Wanneer u de vertragingen of problemen met verschillende zoekopdrachten in uw MySQL-database opmerkt, geeft dit aan dat u mogelijk buitensporige en inactieve threads heeft.



Daarom is het handig om te begrijpen welke threads problemen veroorzaken en hoe u de belasting kunt minimaliseren. Met MySQL kunt u verschillende opties gebruiken om de lopende processen te analyseren. We zullen twee opties bespreken die helpen bij het tonen van de MySQL-processen.



Methode 1: Via de opdracht Show Processlist

Wanneer u MySQL op de opdrachtregel opent, kunt u de opdracht SHOW PROCESSLIST gebruiken om de informatie over alle lopende processen op uw MySQL-server weer te geven. Wanneer het wordt uitgevoerd, geeft het de server een momentopname van verschillende verbindingen en hun informatie, zoals de status, tijd, enz.





Het volgende is het uit te voeren commando:

TOON PROCESLIJST;

Let op de verschillende kolommen van de uitvoer. Laten we elk kort bespreken:



  1. ID kaart - Het toont de proces-ID van het lopende proces. In het geval van talloze actieve processen heeft elk zijn unieke ID.
  2. Gebruiker - Het vertegenwoordigt de gebruiker die is gekoppeld aan de specifieke thread.
  3. Gastheer - Het toont de host waar de specifieke client is verbonden. Het is de hostnaam van de specifieke client die de verklaring heeft afgegeven.
  4. DB – Als een database voor een bepaalde thread is geselecteerd, verschijnt deze onder de DB-kolom. Als NULL wordt weergegeven, is er geen database geselecteerd.
  5. Commando - Het toont het commando dat wordt uitgevoerd door de thread.
  6. Tijd – Voor de specifieke thread geeft deze kolom aan hoe lang de thread in de huidige staat is.
  7. Staat - Het laat zien in welke staat of gebeurtenis de thread zich bevindt.
  8. Info - Het laat zien welk statement de thread momenteel uitvoert.

In dit geval is de vorige uitvoer het resultaat dat we krijgen van onze opdracht SHOW PROCESSLIST. Het resultaat wordt in tabelvorm weergegeven. Stel dat u dezelfde resultaten wilt bekijken, maar dan op een verticale manier. U kunt in plaats daarvan de volgende opdracht gebruiken:

TOON VERWERKINGSLIJST\G;

Neem optioneel [FULL] op in de opdracht om ervoor te zorgen dat u geen lopend proces mist.

Methode 2: Via de optie INFORMATION_SCHEMA.PROCESSLIST

MySQL heeft de INFORMATION_SCHEMA.PROCESSLIST-tabel die een lijst bevat met alle actieve verbindingen die naar de server gaan. Door deze tabel te openen, krijgt u de details van al die actieve verbindingen om hun host, proces-ID, status, opdracht, etc. te kennen die vergelijkbaar zijn met wat u krijgt met de opdracht SHOW PROCESSLIST.

Hier is de opdracht om uit te voeren:

SELECTEER * UIT INFORMATION_SCHEMA.PROCESSLIST;

Nadat u de opdracht hebt uitgevoerd, krijgt u een uitvoer die vergelijkbaar is met die in het volgende, waarin alle details van de lopende MySQL-processen worden weergegeven:

Hoe de lopende MySQL-processen te doden

Stel dat u een probleem hebt met de lopende processen. U kunt elk inactief proces beëindigen om de laadtijd van uw server te verkorten en de efficiëntie te verbeteren. De eerste taak is het identificeren van de ID van de specifieke thread. We hebben twee methoden gegeven om de ID van een thread te vinden.

Zodra u de ID heeft, kunt u de opdracht 'kill' uitvoeren met de volgende syntaxis:

KILL ;

Nadat u de opdracht hebt uitgevoerd, krijgt u een succesvolle uitvoer die de betreffende rij laat zien en wordt de verbinding met de server verbroken. Dat is hoe je een MySQL-proces doodt.

Conclusie

MySQL biedt twee manieren waarop u de lopende processen kunt weergeven. We hebben beide opties besproken, de gegeven syntaxis en een voorbeeldopdracht, om u te helpen de MySQL SHOW PROCESSLIST te begrijpen. Toch hebben we gezien hoe je een lopend proces kunt doden. Hopelijk begrijp je nu hoe de MySQL SHOW PROCESSLIST werkt.