这个专题主要讲information_ schema数据库下的一些表

如无特殊说明数据库版本为MySQL 5.7.26


## 1. PROCESSLIST 

该表提供数据库允许的线程的情况

除非用户有process权限,否则只能看到该用户所拥有的线程的信息

也可以通过mysqladmin processlist 命令来执行


他有如下栏位

- ID  连接标识符,这个ID和show processlist 中ID是一样的,也和Performance Schema 中threads表的PROCESSLIST_ID 栏位是一样的,也和CONNECTION_ID()函数返回的是一样的
- USER 连接的用户,其中system user代表系统用户,非用户连接,unauthenticated user代表是用户连接,但是未完成认证,event_scheduler 用户代表的是监控定时任务的用户
- HOST 连接的主机名,如果用户是system user,则HOST为空
- DB 连接的数据库,如果未选择数据库,则为NULL
- COMMAND 线程执行的命令类型

- TIME 线程在当前状态持续的时间,以秒为单位

- STATE 线程当前的状态,如果该状态持续很久,说明有问题,如果是SHOW PROCESSLIST 命令,则状态为NULL

- INFO 线程执行的具体命令,如果执行的是call procedure,这里可能显示的是内容的语句,如select



## 2. 实际截图



首先新建一个分区表

```

SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
```

[image:865 size:orig]




或者show命令

FULL代表显示语句的全部内容

```
SHOW FULL PROCESSLIST;

SHOW PROCESSLIST;
```



[image:866 size:orig]






## 4. 参考链接


[https://dev.mysql.com/doc/refman/5.7/en/processlist-table.html](https://dev.mysql.com/doc/refman/5.7/en/processlist-table.html)