mysql 解决死锁 - show full processlist

Posted 栗子~~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 解决死锁 - show full processlist相关的知识,希望对你有一定的参考价值。

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


mysql 解决死锁

SHOW FULL PROCESSLIST;
show full processlist 返回的结果是实时变化的,是对mysql链接执行的现场快照,所以用来处理突发事件非常有用

在这里插入图片描述

01 针对每列含义

序号字段含义
1Id链接mysql 服务器线程的唯一标识,可以通过kill来终止此线程的链接。
2User当前线程链接数据库的用户
3Host显示这个语句是从哪个ip 的哪个端口上发出的。可用来追踪出问题语句的用户
4db线程链接的数据库,如果没有则为null
5Command显示当前连接的执行的命令,一般就是休眠或空闲(sleep),查询(query),连接(connect)
6Time线程处在当前状态的时间,单位是秒
7State显示使用当前连接的sql语句的状态,很重要的列,后续会有所有的状态的描述,请注意,state只是语句执行中的某一个状态,一个 sql语句,已查询为例,可能需要经过copying to tmp table,Sorting result,Sending data等状态才可以完成

02 杀死你想要的杀死的线程

kill 2454;
commit;

以上是关于mysql 解决死锁 - show full processlist的主要内容,如果未能解决你的问题,请参考以下文章

MySQL :only_full_group_by解决方案

mysql 死锁:如何解决mysql死锁

解决一次mysql死锁问题

Mysql还原时提示“The table 'TABLENAME' is full”

MySQL - 死锁的产生及解决方案

mysql死锁