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
客户端程序名称。