### 26.3.23 信息\_SCHEMA PROCESSLIST 表

[](<>)[](<>)

MySQL 进程列表指示当前由服务器内执行的线程集执行的操作。这[`进程列表`](information-schema-processlist-table.html)表是过程信息的一种来源。有关此表与其他来源的比较，请参阅[过程信息的来源](processlist-access.html#processlist-sources).

这[`进程列表`](information-schema-processlist-table.html)表有这些列：

-   `ID`

    连接标识符。这与显示在`Id`的列[`显示进程列表`](show-processlist.html)声明，显示在`PROCESSLIST_ID`性能模式的列[`线程`](performance-schema-threads-table.html)表，并由[`CONNECTION_ID()`](information-functions.html#function_connection-id)线程内的函数。

-   `用户`

    发出语句的 MySQL 用户。一个值`系统用户`指由服务器生成的用于在内部处理任务的非客户端线程，例如，延迟行处理程序线程或副本主机上使用的 I/O 或 SQL 线程。为了`系统用户`, 中没有指定主机`主持人`柱子。`未经身份验证的用户`指已与客户端连接关联但尚未发生客户端用户身份验证的线程。`event_scheduler`指的是监控预定事件的线程（参见[第 25.4 节，“使用事件调度程序”](event-scheduler.html)）。

    笔记

    一种`用户`的价值`系统用户`不同于[`SYSTEM_USER`](privileges-provided.html#priv_system-user)特权。前者指定内螺纹。后者区分系统用户和普通用户帐户类别（请参阅[第 6.2.11 节，“帐户类别”](account-categories.html)）。

-   `主持人`

    发出语句的客户端的主机名（除了`系统用户`，没有主机）。TCP/IP 连接的主机名报告在`*`主机名`*:*`客户端端口`*`格式以便更容易确定哪个客户端在做什么。

-   `D B`

    线程的默认数据库，或`空值`如果没有选择。

-   `命令`

    线程代表客户端执行的命令类型，或`睡觉`如果会话空闲。有关线程命令的说明，请参见[第 8.14 节，“检查服务器线程（进程）信息”](thread-information.html).该列的值对应于`COM_*`xxx`*`客户端/服务器协议的命令和`Com_*`xxx`*`状态变量。看[第 5.1.10 节，“服务器状态变量”](server-status-variables.html).

-   `时间`

    线程处于当前状态的时间（以秒为单位）。对于副本 SQL 线程，该值是上次复制事件的时间戳与副本主机的实际时间之间的秒数。看[第 17.2.3 节，“复制线程”](replication-implementation-details.html).

-   `状态`

    指示线程正在做什么的动作、事件或状态。对于描述`状态`值，见[第 8.14 节，“检查服务器线程（进程）信息”](thread-information.html).

    大多数状态对应于非常快速的操作。如果一个线程在给定状态下停留数秒，则可能存在需要调查的问题。

-   `信息`

    线程正在执行的语句，或`空值`如果它不执行任何语句。如果该语句执行其他语句，则该语句可能是发送到服务器的语句，或者是最内层的语句。例如，如果一个`称呼`语句执行正在执行的存储过程[`选择`](select.html)声明`信息`值显示[`选择`](select.html)陈述。

#### 笔记

-   [`进程列表`](information-schema-processlist-table.html)是一个非标准`INFORMATION_SCHEMA`桌子。

-   就像从[`显示进程列表`](show-processlist.html)声明[`进程列表`](information-schema-processlist-table.html)表提供有关所有线程的信息，即使是属于其他用户的线程，如果您有[`过程`](privileges-provided.html#priv_process)特权。否则（没有[`过程`](privileges-provided.html#priv_process)特权），非匿名用户可以访问有关他们自己的线程的信息，但不能访问其他用户的线程，匿名用户无权访问线程信息。

-   如果 SQL 语句引用[`进程列表`](information-schema-processlist-table.html)表，MySQL 在语句执行开始时填充整个表一次，因此在语句期间存在读取一致性。多语句事务没有读一致性。

    以下语句是等效的：


```
SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST

SHOW FULL PROCESSLIST
```
