Der MySQL Server erzeugt folgende Threads:
Der TCP/IP-Verbindungs-Thread behandelt alle Verbindungsanfragen und erzeugt für jede Verbindung einen neuen dedizierten Thread zur Authentifizierung und Verarbeitung von SQL-Anfragen.
Auf Windows NT gibt es einen Handler-Thread für die Named Pipe, der für Named-Pipe-Verbindungsanfragen dieselbe Arbeit wie der TCP/IP-Verbindungs-Thread leistet.
Der Signal-Thread kümmert sich um Signale und normalerweise
auch um Alarmsignale und
process_alarm()
-Aufrufe, um Verbindungen,
die zu lange ungenutzt waren, per Timeout zu beenden.
Wenn mysqld mit
-DUSE_ALARM_THREAD
kompiliert wird, wird
ein spezieller Thread für den Umgang mit Alarmen erzeugt.
Das wird aber nur bei Systemen getan, auf denen es Probleme
mit sigwait()
gibt, oder wenn Sie den
Code der Funktion thr_alarm()
in Ihrer
Anwendung ohne einen dedizierten Thread zur Signalbehandlung
einsetzen möchten.
Wenn die Option
--flush_time=
gesetzt ist, wird ein dedizierter Thread erzeugt, der in den
gegebenen Abständen alle Tabellen auf die Platte
zurückschreibt.
val
Jede Verbindung besitzt ihren eigenen Thread.
Jede Tabelle, für die INSERT DELAYED
gilt, bekommt ihren eigenen Thread.
Wenn Sie die Option --master-host
setzen,
wird ein Thread für die Slave-Replikation gestartet, um
Updates vom Master zu lesen und anzuwenden.
Der Befehl mysqladmin processlist zeigt nur
den Verbindungs-Thread, den INSERT
DELAYED
-Thread und den Replikations-Thread an.
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.