MySQL 进程列表指示了在服务器内执行的线程集当前正在执行的操作。processlist 和 x$processlist 视图汇总了进程信息。它们提供了比 SHOW PROCESSLIST 语句和 INFORMATION_SCHEMA PROCESSLIST 表更完整的信息,并且也是非阻塞的。默认情况下,行按降序进程时间和降序等待时间排序。有关进程信息源的比较,请参阅 进程信息来源。
此处的列描述比较简略。有关其他信息,请参阅 第 29.12.22.8 节,“threads 表” 中对性能模式 threads 表的描述。
processlist 和 x$processlist 视图包含以下列:
thd_id线程 ID。
conn_id连接 ID。
user线程用户或线程名称。
db线程的默认数据库,如果没有则为
NULL。command对于前台线程,线程代表客户端执行的命令类型,如果会话处于空闲状态,则为
Sleep。state指示线程正在执行的操作、事件或状态。
time线程处于当前状态的时间(以秒为单位)。
current_statement线程正在执行的语句,如果未执行任何语句,则为
NULL。execution_engine查询执行引擎。值为
PRIMARY或SECONDARY。用于 HeatWave 服务和 HeatWave,其中PRIMARY引擎是InnoDB,SECONDARY引擎是 HeatWave (RAPID)。对于 MySQL 社区版服务器、MySQL 企业版服务器(本地部署)和没有 HeatWave 的 HeatWave 服务,该值始终为PRIMARY。statement_latency语句执行的时间。
progress支持进度报告的阶段已完成的工作的百分比。请参阅 第 30.3 节,“sys 模式进度报告”。
lock_latency当前语句等待锁定的时间。
cpu_latency当前线程在 CPU 上花费的时间。
rows_examined当前语句从存储引擎读取的行数。
rows_sent当前语句返回的行数。
rows_affected受当前语句影响的行数。
tmp_tables当前语句创建的内部内存中临时表数。
tmp_disk_tables当前语句创建的内部磁盘上临时表数。
full_scan当前语句执行的全表扫描次数。
last_statement如果当前没有正在执行的语句或等待,则为线程最后执行的语句。
last_statement_latency最后一条语句执行的时间。
current_memory线程分配的字节数。
last_wait线程最近一次等待事件的名称。
last_wait_latency线程最近一次等待事件的等待时间。
source包含生成事件的代码的源文件和行号。
trx_latency线程当前事务的等待时间。
trx_state线程当前事务的状态。
trx_autocommit当前事务启动时是否启用了自动提交模式。
pid客户端进程 ID。
program_name客户端程序名称。