通过show processlist查看MySQL的进程状态,在State列上面的状态有如下这些:

Analyzing
线程对MyISAM 表的统计信息做分析(例如, ANALYZE TABLE )。
checking permissions
线程检查服务器是否具有所需的权限来执行该语句。
Checking table
线程正在执行表检查操作。
cleaning up
线程处理一个命令,并正准备释放内存和重置某些状态变量。
closing tables
线程改变表中的数据刷新到磁盘和关闭使用的表。
converting HEAP to MyISAM
线程从转换内部临时表MEMORY内存表到磁盘MyISAM表。
copy to tmp table
线程正在处理一个ALTER TABLE语句。
Copying to group table
如果语句有不同的ORDER BY和GROUP BY标准,按组排序并复制到一个临时表。
Copying to tmp table
服务器复制到内存中的临时表。
Copying to tmp table on disk
服务器复制到一个临时表在磁盘上。 
Creating index
线程正在处理ALTER TABLE ... ENABLE KEYS。
Creating sort index
线程正在处理一个SELECT,使用内部临时表解决。
creating table
线程创建一个表, 这包括建立临时表。
Creating tmp table
线程创建一个临时表在内存或磁盘上。 如果表是在内存中创建,但后来被转换成一个磁盘上的表,在该操作状态为Copying to tmp table on disk。
deleting from main table
服务器正在执行多表删除的第一部分。 它只能从第一个表中删除,并保存列和删除从其他表(参考)偏移。
deleting from reference tables
服务器正在执行多表删除的第二部分,从其他表中删除匹配的行。
discard_or_import_tablespace
线程正在处理一个ALTER TABLE ... DISCARD TABLESPACE或ALTER TABLE ... IMPORT TABLESPACE语句。
end
这发生在最后的清理工作,有ALTER TABLE , CREATE VIEW , DELETE , INSERT , SELECT或UPDATE语句。
executing
线程已开始执行语句。
Execution of init_command
线程正在执行中的init_command系统变量。
freeing items
线程已执行的命令。 释放一些在这种状态下完成的项目,涉及的查询缓存。 这种状态通常后跟cleaning up 。
Flushing tables
线程正在执行FLUSH TABLES ,等待所有线程关闭其表。
FULLTEXT initialization
该服务器是准备执行一个自然语言的全文检索。
init
在发生之前的初始化ALTER TABLE , DELETE , INSERT , SELECT或UPDATE语句。 服务器在这种状态下采取的行动包括冲洗二进制日志中InnoDB日志,和一些查询缓存清理操作。
Killed
有人发送一个KILL线程的语句,它应该中止在下一次检查杀死标志。
Locked
查询被锁定由另一个查询。
logging slow query
线程正在写慢查询日志的语句。
NULL
这种状态是用于SHOW PROCESSLIST状态。
login
连接线程的初始状态,直到客户端已成功通过身份验证。
Opening tables , Opening table
线程试图打开一个表。 这应该是非常快的过程中,除非有阻止打开。
optimizing
服务器执行查询的初始优化。
preparing
这种状态出现在查询优化过程中。
Purging old relay logs
线程是消除不必要的中继日志文件。
query end
这种状态发生后处理查询,但在此freeing items的项目状态。
Reading from net
服务器读网络数据包。
Removing duplicates
查询使用SELECT DISTINCT在这样一种方式。 MySQL需要一个额外的的阶段,将结果发送到客户端之前删除所有重复行。
removing tmp table
线程移除临时表。 如果没有创建临时表,这种状态是不使用。
rename
线程重命名表。
rename result table
线程正在处理一个ALTER TABLE语句,创建新表并重新命名它来取代原来的表。
Reopen tables
线程有一个表锁,并试图重新打开它。
Repair by sorting
使用排序修复索引。
Repair done
修复完成。
Repair with keycache
修复使用键缓存。用于myisam表,出现该状态应加大myisam_max_sort_file_size。
Rolling back
回滚事务。
Saving state
保存状态。
Searching rows for update
线程做第一阶段前更新他们找到所有匹配的行。
Sending data
线程处理一个SELECT语句,将数据发送到客户端。 因为在这个状态发生的操作往往执行大量的磁盘访问(读取),查询的生命周期最长的运行状态。
setup
线程开始一个ALTER TABLE操作。
Sorting for group
线程做一个分组。
Sorting for order
线程做ORDER BY排序。
Sorting index
线程排序索引,更高效的访问MyISAM表的优化操作。
Sorting result
对于SELECT语句,这是Creating sort index类似,但不用临时表。
statistics
服务器计算统计数据,以制定一个查询执行计划。 如果一个线程处于这种状态很长一段时间,可能是磁盘在执行其他工作。
System lock
该线程正在等待内部或外部的系统锁表。 可以与外部系统--skip-external-locking锁定选项。
Table lock
线程要求内部表锁。
Updating
线程正在寻找要更新的行。
updating main table
服务器正在执行多表更新的第一部分,它只更新第一个表。
updating reference tables
服务器正在执行多表更新的第二部分。
User lock
线程请求或要求与锁等待GET_LOCK()调用。
Waiting for release of readlock
线程正在等待另一个线程的锁被释放。
Waiting for tables , Waiting for table
线程得到一个表的基本结构发生了变化的通知,它需要重新打开表,以获取新的结构。 必须等到所有其他线程已经关闭表。
如果另一个线程已FLUSH TABLES或表执行下面的语句:FLUSH TABLES tbl_name、ALTER TABLE、RENAME TABLE、REPAIR TABLE、ANALYZE TABLE、OPTIMIZE TABLE。
Waiting on cond
在该线程正在等待一个条件。
Waiting to get readlock
线程已发出一个FLUSH TABLES WITH READ LOCK语句获得全局读锁,并正在等待获取锁。
Writing to net、waiting for net
服务器写一个数据包活等待网络,要是大量出现请迅速检查数据库到前端的网络连接状态和流量。

mysql 进程状态(转)的更多相关文章

  1. mysql优化(2) 观察mysql进程状态

    环境准备,安装sysbench wget http://nchc.dl.sourceforge.net/project/sysbench/sysbench/0.4.12/sysbench-0.4.12 ...

  2. MySQL在并发场景下的问题及解决思路

    目录 1.背景 2.表锁导致的慢查询的问题 3.线上修改表结构有哪些风险? 4.一个死锁问题的分析 5.锁等待问题的分析 6.小结 1.背景 对于数据库系统来说在多用户并发条件下提高并发性的同时又要保 ...

  3. linux下的mysql安装

    写在开头的小故事: 很久以前小石头我在一家公司做运维工程师,当时我们有一台认证服务器安装了mysql5.5版本.有一天领导说防止它挂掉,做个主从复制吧,我开心的接受任务,但是让某同事听到了, 此同事代 ...

  4. linux的基本操作1

    文件系统 ext4 d: 进入d盘dir /w 以友好的方式列出目录cd     目录名 进入目录cd\      退出目录cd ..    退出到上级目录ipconfig /all 显示本机网络信息 ...

  5. tidb在DDL语句方面的测试

    Mysql与tidb测试数据为8000万行. 1.修改一个字段的列名,比如将“ctime”修改为“cctime”. Tidb测试: MySQL测试: 2.同一属性之间切换,即修改一个字段的属性大小.比 ...

  6. Java菜鸟到大牛学习路线培训教程

    第1阶段(Java程序员) - Java语言基础 - 101 JavaSE -01-常见Dos命令.Java历史.Java跨平台.配置Path环境变量.第一个HelloWorld例子 -02-配置JA ...

  7. MySQL的进程状态

    通过show processlist查看MySQL的进程状态,在State列上面的状态有如下这些: Analyzing线程对MyISAM 表的统计信息做分析(例如, ANALYZE TABLE ).c ...

  8. 我的MYSQL学习心得(十七) 复制

    我的MYSQL学习心得(十七) 复制 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...

  9. Linux/CentOS 服务安装/卸载,开机启动chkconfig命令详解|如何让MySQL、Apache开机启动?

    chkconfig chkconfig在命令行操作时会经常用到.它可以方便地设置和查询不同运行级上的系统服务.这个可要好好掌握,用熟练之后,就可以轻轻松松的管理好你的启动服务了. 注:谨记chkcon ...

随机推荐

  1. web字体

    <span style="font-family:sans-serif">Lorem Ipsum</span> <span style="f ...

  2. MyEclipse+Struts+Hibernate+Mysql开发环境配置

    软件: jdk-6u22-windows-x64.exe apache-tomcat-6.0.29.exe mysql-5.1.51-winx64.exe myeclipse-8.6.0-win32. ...

  3. 高逼格的画图:VIM原来可以这样玩

    在Linux上其实并不缺少画图软件(比如yEd等),那么为什么还需要用VIM来画图: 更轻,不需要安装太多东西 更小,就是一些文本,比图片什么的小多了,使用起来也更简单 更有逼格 那么我们该怎么做呢? ...

  4. Linux系统下查看硬件信息命令大全

    导读 有许多命令可以用来查看 Linux 系统上的硬件信息.有些命令只能够打印出像 CPU 和内存这一特定的硬件组件信息,另外一些命令可以查看多种硬件组件的信息. 这个教程可以带大家快速了解一下查看各 ...

  5. 如何区分JS中的this?!

    ->我们一般只研究函数执行的时候里面的this->this是谁和当前的函数在哪执行和在哪定义没有半毛钱的关系 1)看函数执行的时候,函数名之前是否有".",有的话&qu ...

  6. gradle默认路径

    C:\Users\wango\.gradle\wrapper\dists\gradle-2.2.1-all\c64ydeuardnfqctvr1gm30w53

  7. root密码

    安装完Ubuntu后忽然意识到没有设 置root密码,不知道密码自然就无法进入根用户下.到网上搜了一下,原来是这麽回事.Ubuntu的默认root密码是随机的,即每次开机都有一个新的 root密码.我 ...

  8. 后台向前台传递entity的list然后构筑combobox的方法(easyui)

    遇问题,莫着急,深呼吸. 后台写法:JsonUtil.toJson(new ArrayList<Entity>());此处jsonUtil是已封装的方法,即将entity的list转为js ...

  9. Windows && Linux 双系统

    使用软件 EasyBCD 添加新条目--->NeoGrub--->安装--->配置 在弹出的文本中输入如下东西: title Install Backbox root (hd0,0) ...

  10. C++ code: 将程序的输出,保存到txt文档中,且每35个数,自动换行

    // write the predicted score into txt files       ofstream file("/home/wangxiao/Downloads/caffe ...