Spec-Zone.ru › MySQL 8.4

10.14.1 Доступ к списку процессов

В данном разделе перечислены источники информации о процессах, необходимые привилегии для просмотра информации о процессах и описано содержимое записей списка процессов.

  • Источники информации о процессах

  • Необходимые привилегии для доступа к списку процессов

  • Содержимое записей списка процессов

Источники информации о процессах

Информация о процессах доступна из следующих источников:

  • Команда SHOW PROCESSLIST: Раздел 15.7.7.31, «Запрос SHOW PROCESSLIST»

  • Команда mysqladmin processlist: Раздел 6.5.2, «mysqladmin — Программа администрирования сервера MySQL»

  • Таблица INFORMATION_SCHEMA PROCESSLIST: Раздел 28.3.23, «Таблица INFORMATION_SCHEMA PROCESSLIST»

  • Таблица processlist схемы Performance Schema: Раздел 29.12.22.7, «Таблица processlist»

  • Столбцы таблицы threads схемы Performance Schema с префиксом PROCESSLIST_: Раздел 29.12.22.8, «Таблица threads»

  • Представления sys и processlist схемы session: Раздел 30.4.3.22, «Представления processlist и x$processlist» и Раздел 30.4.3.33, «Представления session и x$session»

Таблица threads сравнивается с SHOW PROCESSLIST, INFORMATION_SCHEMA PROCESSLIST и mysqladmin processlist следующим образом:

  • Доступ к таблице threads не требует мьютекса и минимально влияет на производительность сервера. Другие источники имеют негативное влияние на производительность, так как требуют мьютекса.

    Примечание

    Доступна альтернативная реализация для SHOW PROCESSLIST на основе таблицы Performance Schema processlist, которая, как и таблица threads, не требует мьютекса и имеет лучшие характеристики производительности. Подробнее см. в Разделе 29.12.22.7, «Таблица processlist».

  • Таблица threads отображает фоновые потоки, которых нет в других источниках. Она также предоставляет дополнительную информацию для каждого потока, отсутствующую в других источниках, например, является ли поток фоновым или фоновым, и расположение на сервере, связанное с потоком. Это означает, что таблица threads может использоваться для мониторинга активности потоков, недоступной в других источниках.

  • Мониторинг потоков Performance Schema можно включить или отключить, как описано в Разделе 29.12.22.8, «Таблица threads».

По этим причинам администраторы баз данных, выполняющие мониторинг сервера с помощью одного из других источников информации о потоках, могут захотеть использовать таблицу threads вместо этого.

Представление sys схемы processlist предоставляет информацию из таблицы threads Performance Schema в более удобном формате. Представление sys схемы session предоставляет информацию о пользовательских сессиях, подобно представлению sys схемы processlist, но с отфильтрованными фоновыми процессами.

Необходимые привилегии для доступа к списку процессов

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

Таблица threads Performance Schema также предоставляет информацию о потоках, но доступ к таблице использует другую модель привилегий. См. Раздел 29.12.22.8, «Таблица threads».

Содержимое записей списка процессов

Каждая запись списка процессов содержит несколько фрагментов информации. Следующий список описывает их с использованием меток из выходных данных запроса SHOW PROCESSLIST. Другие источники информации о процессах используют аналогичные метки.

  • Id — идентификатор соединения клиента, связанного с потоком.

  • User и Host указывают учетную запись, связанную с потоком.

  • db — базовая база данных для потока или NULL, если ни одна не выбрана.

  • Command и State указывают, что делает поток.

    Большинство состояний соответствуют очень быстрым операциям. Если поток находится в данном состоянии в течение многих секунд, возможно, есть проблема, которую необходимо исследовать.

    В следующих разделах перечислены возможные значения Command и State, сгруппированные по категориям. Значение некоторых из них очевидно. Для других предоставляется дополнительное описание.

    Примечание

    Приложения, которые анализируют информацию о списке процессов, должны понимать, что команды и состояния могут быть изменены.

  • Time показывает, как долго поток находится в текущем состоянии. Понимание текущего времени потоком может быть изменено в некоторых случаях: поток может изменить время с помощью SET TIMESTAMP = value. Для реплицирующего SQL-потока значение равно количеству секунд между отметкой времени последнего реплицированного события и реальным временем хоста реплики. См. Раздел 19.2.3, «Реплицирующие потоки».

  • Info указывает выполняемую команду потока или NULL, если не выполняется ни одна команда. Для SHOW PROCESSLIST это значение содержит только первые 100 символов команды. Чтобы увидеть полные команды, используйте SHOW FULL PROCESSLIST (или обратитесь к другому источнику информации о процессе).

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

Spec-Zone.ru

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