Spec-Zone.ru › MySQL 8.4

28.3.23 Таблица INFORMATION_SCHEMA PROCESSLIST

Важно

INFORMATION_SCHEMA.PROCESSLIST устарела и может быть удалена в будущих выпусках MySQL. Соответственно, реализация SHOW PROCESSLIST, использующая эту таблицу, также устарела. Рекомендуется использовать реализацию Performance Schema PROCESSLIST.

Список процессов MySQL указывает операции, которые в данный момент выполняются набором потоков, работающих в сервере. Таблица PROCESSLIST является одним из источников информации о процессах. Для сравнения этой таблицы с другими источниками см. Источники информации о процессах.

Таблица PROCESSLIST содержит следующие столбцы:

  • ID

    Идентификатор подключения. Это то же значение, что отображается в столбце Id оператора SHOW PROCESSLIST, в столбце PROCESSLIST_ID таблицы Performance Schema threads и возвращается функцией CONNECTION_ID() внутри потока.

  • USER

    Пользователь MySQL, который выполнил оператор. Значение system user относится к потоку, не являющемуся клиентом, созданному сервером для обработки внутренних задач, например, потоку обработчика отложенных строк или потоку ввода/вывода или SQL, используемому на узлах репликации. Для system user в столбце Host хост не указан. unauthenticated user относится к потоку, который стал связан с подключением клиента, но для которого еще не произошла аутентификация пользователя клиента. event_scheduler относится к потоку, который отслеживает запланированные события (см. Раздел 27.4, «Использование планировщика событий»).

    Примечание

    Значение USER, равное system user, отличается от привилегии SYSTEM_USER. Первое обозначает внутренние потоки. Второе различает категории учетных записей системного пользователя и обычного пользователя (см. Раздел 8.2.11, «Категории учетных записей»).

  • HOST

    Имя хоста клиента, выполняющего оператор (за исключением system user, для которого хост не указан). Имя хоста для подключений TCP/IP отображается в формате host_name:client_port, чтобы легче было определить, какой клиент что делает.

  • DB

    База данных по умолчанию для потока или NULL, если не выбрана ни одна база данных.

  • COMMAND

    Тип команды, которую выполняет поток от имени клиента, или Sleep, если сеанс простаивает. Для описаний команд потоков см. Раздел 10.14, «Просмотр информации о потоках сервера (процессе)». Значение этого столбца соответствует командам COM_xxx протокола клиент/сервер и переменным состояния Com_xxx. См. Раздел 7.1.10, «Переменные состояния сервера».

  • TIME

    Время в секундах, которое поток находится в текущем состоянии. Для потока репликации SQL значение является количеством секунд между отметкой времени последнего реплицированного события и реальным временем узла репликации. См. Раздел 19.2.3, «Потоки репликации».

  • STATE

    Действие, событие или состояние, которые указывают, что делает поток. Для описаний значений STATE см. Раздел 10.14, «Просмотр информации о потоках сервера (процессе)». Большинство состояний соответствуют очень быстрым операциям. Если поток остается в определенном состоянии в течение многих секунд, возможно, существует проблема, которую нужно расследовать.

  • INFO

    Оператор, выполняемый потоком, или NULL, если он не выполняет ни одного оператора. Оператор может быть тем, который был отправлен на сервер, или внутренним оператором, если оператор выполняет другие операторы. Например, если оператор CALL выполняет хранимую процедуру, которая выполняет оператор SELECT, значение INFO отображает оператор SELECT.

Примечания

  • PROCESSLIST — нестандартная таблица INFORMATION_SCHEMA.

  • Как и в выводе оператора SHOW PROCESSLIST, таблица PROCESSLIST предоставляет информацию обо всех потоках, даже тех, которые принадлежат другим пользователям, если у вас есть привилегия PROCESS. В противном случае (без привилегии PROCESS), у неанонимных пользователей есть доступ к информации о собственных потоках, но не о потоках других пользователей, а у анонимных пользователей нет доступа к информации о потоках.

  • Если SQL-оператор ссылается на таблицу PROCESSLIST, MySQL заполняет всю таблицу один раз, когда начинается выполнение оператора, чтобы обеспечить согласованность чтения во время выполнения оператора. Согласованность чтения отсутствует для транзакции с несколькими операторами.

Следующие операторы эквивалентны:

SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST

SHOW FULL PROCESSLIST

Вы можете получить информацию об использовании этой таблицы, проверив значения переменных состояния сервера Deprecated_use_i_s_processlist_count и Deprecated_use_i_s_processlist_last_timestamp. Deprecated_use_i_s_processlist_count показывает количество раз, когда таблица PROCESSLIST была обращена к ней с момента последнего перезапуска сервера; Deprecated_use_i_s_processlist_last_timestamp предоставляет последнее время обращения к таблице в виде метки времени Unix.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/information-schema-processlist-table.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API