show processlist和show full processlist

processlist命令的输出结果显示了有哪些线程在运行,不仅可以查看当前所有的连接数,还可以查看当前的连接状态帮助识别出有问题的查询语句等。

如果是root帐号,能看到所有用户的当前连接。如果是其他普通帐号,则只能看到自己占用的连接。showprocesslist只能列出当前100条。如果想全部列出,可以使用SHOW FULL PROCESSLIST命令


mysql> show processlist;
+----+------+--------------------+------+---------+-------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+--------------------+------+---------+-------+-------+------------------+
| 1 | root | localhost | NULL | Sleep | 12 | | NULL |
| 2 | root | 192.168.100.1:7437 | test | Sleep | 8035 | | NULL |
| 3 | root | 192.168.100.1:7438 | NULL | Sleep | 24348 | | NULL |
| 5 | root | 192.168.100.1:7443 | NULL | Sleep | 24317 | | NULL |
| 7 | root | 192.168.100.1:7450 | test | Sleep | 24272 | | NULL |
| 9 | root | 192.168.100.1:5152 | test | Query | 0 | init | show processlist |
+----+------+--------------------+------+---------+-------+-------+------------------+
6 rows in set
mysql> show full processlist;
+----+------+--------------------+------+---------+-------+-------+-----------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+--------------------+------+---------+-------+-------+-----------------------+
| 1 | root | localhost | NULL | Sleep | 19 | | NULL |
| 2 | root | 192.168.100.1:7437 | test | Sleep | 8042 | | NULL |
| 3 | root | 192.168.100.1:7438 | NULL | Sleep | 24355 | | NULL |
| 5 | root | 192.168.100.1:7443 | NULL | Sleep | 24324 | | NULL |
| 7 | root | 192.168.100.1:7450 | test | Sleep | 24279 | | NULL |
| 9 | root | 192.168.100.1:5152 | test | Query | 0 | init | show full processlist |
+----+------+--------------------+------+---------+-------+-------+-----------------------+
6 rows in set

各个列的含义:

①.id列,用户登录mysql时,系统分配的"connection_id",可以使用函数connection_id()查看
②.user列,显示当前用户。如果不是root,这个命令就只显示用户权限范围的sql语句
③.host列,显示这个语句是从哪个ip的哪个端口上发的,可以用来跟踪出现问题语句的用户
④.db列,显示这个进程目前连接的是哪个数据库
⑤.command列,显示当前连接的执行的命令,一般取值为休眠(sleep),查询(query),连接(connect)等
⑥.time列,显示这个状态持续的时间,单位是秒
⑦.state列,显示使用当前连接的sql语句的状态,很重要的列。state描述的是语句执行中的某一个状态。一个sql语句,以查询为例,可能需要经过copying to tmp table、sorting result、sending data等状态才可以完成
⑧.info列,显示这个sql语句,是判断问题语句的一个重要依据

在主从复制环境中,show processlist或show full processlist对于判断状态很有帮助,例如下面的state列:

转载请注明出处:https://www.cnblogs.com/f-ck-need-u/p/7742153.html

最新文章

  1. ipad和iphone的适配
  2. spring mvc(前置控制器)(转载)
  3. 【用xocde5打包 在IOS7以下也能显示无默认gloss 效果 图解】
  4. Java生成不重复的数的方法
  5. OC-点语法
  6. iOS 检查版本号的代码
  7. [转]PO和VO、关于延迟加载(lazy)和强制加载(Hibernate.initialize(Object proxy) )
  8. SimpleUrlHandlerMapping用法
  9. Java web 文件下载
  10. 纯CSS实现三列DIV等高布局
  11. android圆形进度条ProgressBar颜色设置
  12. AngularJS 初学笔记(理论基础)
  13. git 终端克隆
  14. nyoj_6:喷水装置(一)
  15. JavaScript(第九天)【正则表达式】
  16. 3DMath
  17. [日常] Go-逐行读取文本信息
  18. oracle 建表默认空间
  19. Debian中APT的前世今生
  20. ​ oracle分区表(附带按照月自动分区、按天自动分区)

热门文章

  1. selenium常用webdriver api汇总
  2. 15个随机图片API
  3. (.net core环境下)图形验证,人机交互,一个不够我给你两个
  4. linux下清空文件内容的3个命令
  5. python 3 continue 循环控制
  6. 老男孩教育python全栈第22期Day15笔记
  7. NOIP2017 Day1 T1 小凯的疑惑
  8. openstack 介绍
  9. git修改未push和已经push的注释信息
  10. 关于数学公式Markdown