用于显示哪些线程正在运行。
id:id 标识,要 kill 一个语句的时候很有用 use:当前连接用户 host:显示这个连接从哪个 ip 的哪个端口上发出 db:数据库名 command:连接状态,一般是休眠(sleep),查询(query),连接(connect) time:连接持续时间,单位是秒 state:显示当前 sql 语句的状态。state 只是语句执行中的某一个状态,一个 sql 语句,比如查询,可能需要经过copying to tmp table,Sorting result,Sending data 等状态才可以完成。 info:显示这个 sql 语句
如果是 root 账号,我们能看到所有用户的当前连接。如果是普通帐号,只能看到自己占用的连接。
如果我们要对数据库进行性能检查,可按如下步骤:
- 先通过
show processlist
查看执行时间最长的线程,找到对应 sql,找到表; - 然后再使用
show open tables where in_use>0
验证一下; - 确认后,使用
kill process_id
杀死 connection。KILL [CONNECTION | QUERY] processlist_id。