26.4.3.22 流程列 table 和 x $ processlist 视图

MySQL 进程列 table 指示服务器内部正在执行的一组线程当前正在执行的操作。 processlistx$processlist视图汇总了过程信息。与SHOW PROCESSLIST语句和INFORMATION_SCHEMA PROCESSLISTtable 相比,它们提供了更完整的信息,并且它们也是非阻塞的。默认情况下,行按降序处理时间和降序 await 时间排序。有关过程信息源的比较,请参见Process信息来源

此处的列描述是简短的。有关其他信息,请参见第 25.12.16.3 节“线程 table”处的“性能模式threads”table 的描述。

processlistx$processlist视图具有以下列:

  • thd_id

线程 ID。

  • conn_id

连接 ID。

  • user

线程用户或线程名称。

  • db

线程的默认数据库,如果没有,则为NULL

  • command

对于前台线程,该线程代 tableClient 端执行的命令类型;如果会话空闲,则返回Sleep

  • state

指示线程正在执行的操作,事件或状态。

  • time

线程处于其当前状态的时间(以秒为单位)。

  • current_statement

线程正在执行的语句,如果未执行任何语句,则返回NULL

  • statement_latency

语句已执行多长时间。

  • progress

支持进度报告的阶段完成的工作百分比。参见第 26.3 节“ sys 模式进度报告”

  • lock_latency

当前语句 await 锁所花费的时间。

  • rows_examined

当前语句从存储引擎读取的行数。

  • rows_sent

当前语句返回的行数。

  • rows_affected

当前语句影响的行数。

  • tmp_tables

当前语句创建的内部内存中临时 table 的数量。

  • tmp_disk_tables

当前语句创建的内部磁盘临时 table 的数量。

  • full_scan

当前语句执行的全 table 扫描的次数。

  • last_statement

如果当前没有正在执行的语句或没有 await,则由线程执行的最后一条语句。

  • last_statement_latency

最后一条语句执行了多长时间。

  • current_memory

线程分配的字节数。

  • last_wait

线程的最新 await 事件的名称。

  • last_wait_latency

最近的线程 await 事件的 await 时间。

  • source

源文件和行号包含生成事件的检测代码。

  • trx_latency

当前事务对线程的 await 时间。

  • trx_state

线程当前事务的状态。

  • trx_autocommit

当前事务开始时是否启用自动提交模式。

  • pid

Client 端进程 ID。

  • program_name

Client 端程序名称。