Сервер создает следующие потоки:
Поток TCP/IP-соединений обрабатывает все запросы подключения и создает новые выделенные потоки для проведения аутентификации и обработки SQL запросов для каждого соединения.
В Windows NT есть поток обслуживания именованного канала, который выполняет ту же работу, что и поток TCP/IP-соединений, но только по запросам на соединение именованного канала.
Поток сигналов обрабатывает все сигналы. Обычно этот поток также обрабатывает сигналы таймера и обращается к
process_alarm()
для принудительного объявления таймаутов на соединениях, которые слишком долго простаивали.Если
mysqld
скомпилирован с-DUSE_ALARM_THREAD
, то создается выделенный поток, обрабатывающий сигналы таймера. Используется только в некоторых системах, в которых возникают проблемы сsigwait()
, или если есть необходимость использовать кодthr_alarm()
в приложении без выделенного потока обработки сигналов.Если применяется опция
--flush_time=#
, то создается выделенный поток для периодического сбрасывания на диск всех таблиц с заданным интервалом.Каждое соединение имеет свой поток.
Каждая отдельная таблица, на которой используется
INSERT DELAYED
, получает свой отдельный поток.Если применяется
--master-host
, то запускается поток репликации подчиненного сервера для чтения и применения обновлений от головного.
mysqladmin processlist
выводит только потоки соединений, INSERT DELAYED
и
поток репликации.