mysql show processlist的使用
show full processlist 用来查看当前线程处理情况,具体信息请参考官网:https://dev.mysql.com/doc/refman/5.7/en/show-processlist.html
show full processlist 返回的结果是实时变化的,是对mysql链接执行的现场快照,所以用来处理突发事件非常有用。如果没有FULL
关键字, 则show processlist中的Info字段仅显示每个语句的前 100 个字符 。
1.show full processlist
show full processlist对应查询的表为information_schema.processlist
1 2 | select * from information_schema.processlist order by time desc ; select * from information_schema.processlist where command!= 'sleep' order by time desc ; |
详情介绍:
- Id:链接mysql 服务器线程的唯一标识,可以通过kill来终止此线程的链接。
- User:当前线程链接数据库的用户
system user
指由服务器产生的非客户端线程来处理内部任务,例如,延迟行处理程序线程或副本主机上使用的 I/O 或 SQL 线程。对于system user
,列中没有指定主机Host
。unauthenticated user
指的是已与客户端连接相关联但尚未对客户端用户进行身份验证的线程。 解决方法参考:https://www.cnblogs.com/mianbaoshu/p/15722267.htmlevent_scheduler
指的是监视计划事件的线程
- Host:显示这个语句是从哪个ip 的哪个端口上发出的。可用来追踪出问题语句的用户
- db: 线程链接的数据库,如果没有则为null
- Command: 显示当前连接的执行命令,一般就是休眠或空闲(sleep),查询(query),连接(connect)
- Time: 线程处在当前状态的时间,单位是秒
- State:显示使用当前连接的sql语句的状态,很重要的列,后续会有所有的状态的描述,请注意,state只是语句执行中的某一个状态,一个 sql语句,已查询为例,可能需要经过copying to tmp table,Sorting result,Sending data等状态才可以完成
- Info: 线程执行的sql语句,如果没有语句执行则为null。这个语句可以使客户端发来的执行语句也可以是内部执行的语句
2.kill 进程
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!