SHOW [FULL] PROCESSLIST
SHOW [FULL] PROCESSLIST
语句列出连接到相同 TiDB 服务器的当前会话。Info
列包含查询文本,除非指定了可选的 FULL
关键字,否则该文本将被截断。如需查看整个集群的进程列表,请使用 INFORMATION_SCHEMA.CLUSTER_PROCESSLIST
表。
语法图
- ShowProcesslistStmt
ShowProcesslistStmt ::=
"SHOW" "FULL"? "PROCESSLIST"
示例
SHOW PROCESSLIST;
+------+------+-----------------+------+---------+------+------------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+------+------+-----------------+------+---------+------+------------+------------------+
| 5 | root | 127.0.0.1:45970 | test | Query | 0 | autocommit | SHOW PROCESSLIST |
+------+------+-----------------+------+---------+------+------------+------------------+
1 rows in set (0.00 sec)
以上返回结果中的主要字段描述如下:
Command
:SQL 语句的类型,通常值为Query
。Time
:SQL 语句开始执行的时间。State
:SQL 语句的状态。常见的值是autocommit
,表示该 SQL 语句是自动提交的。in transaction
表示该 SQL 语句处于事务中。Info
:表示具体的 SQL 文本。除非指定可选关键字FULL
,否则文本会被截断。
权限
如果当前用户没有 PROCESS
权限,SHOW PROCESSLIST
仅显示该用户自己的会话请求。
MySQL 兼容性
- TiDB 中的
State
列是非描述性的。在 TiDB 中,将状态表示为单个值更复杂,因为查询是并行执行的,而且每个 Go 线程在任一时刻都有不同的状态。