MySQL:show processlist 详解
命令概述
show full processlist 用来查看当前线程处理情况,show full processlist 返回的结果是实时变化的,是对mysql链接执行的现场快照,所以用来处理突发事件非常有用。
一般用到 show processlist 或 show full processlist 都是为了查看当前 mysql 是否有压力,都在跑什么语句,当前语句耗时多久了,有没有什么慢 SQL 正在执行之类的。
可以看到总共有多少链接数,哪些线程有问题(time是执行秒数,时间长的就应该多注意了),然后可以把有问题的线程 kill 掉,这样可以临时解决一些突发性的问题。
有时候一个快照可能看不出什么问题,那么可以频发的刷新试试。
命令详解
下面来看一下运行:show full processlist命令的详解,我们可以通过三种方式来查看命令运行的结果:
1、通过SHOW FULL PROCESSLIST命令查看:
mysql> SHOW FULL PROCESSLIST
*************************** 1. row ***************************
Id: 1
User: system user
Host:
db: NULL
Command: Connect
Time: 1030455
State: Waiting for master to send event
Info: NULL
*************************** 2. row ***************************
Id: 2
User: system user