Spec-Zone.ru › MySQL 9.2

28.3.24 Таблица 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.5, «Использование планировщика событий»).

    Примечание

    Значение 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-9.2-en/information-schema-processlist-table.html

Spec-Zone.ru

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