Beenden einen Prozess in MySQL

Preet Sanghavi 28 März 2022
  1. Alle in MySQL laufenden Prozesse auflisten
  2. Beenden Sie den Prozess mit dem Befehl KILL
Beenden einen Prozess in MySQL

In diesem Tutorial lernen wir, wie man einen Prozess in MySQL beendet.

Oft kann die Ausführung bestimmter MySQL-Prozesse zu lange dauern.

Dies kann zu Leistungsproblemen auf dem System führen. Im Laufe der Zeit werden verschiedene Threads und Anweisungen in einem System überladen, was die Gesamtfunktion des Servers behindert.

Um dieses Problem zu beheben und eine hohe Ressourcennutzung zu vermeiden, können wir bestimmte Prozesse beenden, die nicht mehr ausgeführt werden müssen.

Um einen Prozess in MySQL zu beenden, müssen wir zwei einfache Schritte ausführen, nachdem wir uns bei Ihrem MySQL-Konto angemeldet haben:

  • Listen Sie alle Prozesse auf, die in MySQL ausgeführt werden.
  • Beenden Sie den Prozess mit dem Befehl KILL.

Alle in MySQL laufenden Prozesse auflisten

Bevor wir darauf abzielen, laufende Prozesse zu löschen oder zu beenden, müssen wir zuerst den Prozess id identifizieren. Sobald wir den Prozess id haben, können wir einen Prozess beenden oder beenden.

Wir können die Liste aller vorhandenen Prozesse in MySQL mit dem Befehl show processlist abrufen. Sobald wir diesen Befehl ausführen, erhalten wir die laufenden Prozesse für den angemeldeten Benutzer.

Eine Momentaufnahme der laufenden Prozesse ist wie folgt.

listet alle Prozesse in mysql auf

Wie wir sehen können, hat jeder Prozess eine Prozess-id, User, die den Benutzernamen angibt, Host, die den Host-Server angibt, db, die die Datenbank angibt.

Command gibt den Typ des betrachteten Befehls an, Time gibt die Zeit an, während der die Abfrage ausgeführt wird, State gibt den Status des Prozesses an und Info zeigt alle relevanten Informationen bezüglich des Prozesses an.

Beenden Sie den Prozess mit dem Befehl KILL

Sobald wir die id des zu beendenden Prozesses erhalten haben, können wir den Befehl kill <id> verwenden, um den Prozess zu beenden.

Lassen Sie uns darauf abzielen, den Prozess mit der id-Nummer 14 zu beenden. Diese Aufgabe kann mit der folgenden Abfrage gelöst werden.

KILL 14;

Dadurch wird der id-Prozess als 14 beendet.

Wenn wir außerdem alle mit einem bestimmten Benutzer verbundenen Prozesse beenden möchten, können wir diesen Vorgang mit der folgenden Abfrage ausführen.

SELECT CONCAT('KILL ',id,';') FROM information_schema.processlist WHERE user='preet' INTO OUTFILE '/tmp/processes_text.txt';

In der obigen Abfrage hat eine neue Datei mit den Threads und Anweisungen den Dateinamen processes_text. Wir können diese Datei überprüfen, um zu prüfen, ob wir alle genannten Prozesse beenden möchten.

Sobald wir uns sicher sind, können wir die folgende Abfrage verwenden.

source /tmp/processes_text.txt

Daher können mit Hilfe des KILL-Befehls ein oder mehrere Prozesse in einer MySQL-Datenbank beendet werden.

Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub