iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL线程状态怎么看
  • 763
分享到

MySQL线程状态怎么看

2024-04-02 19:04:59 763人浏览 八月长安
摘要

这篇文章主要介绍了Mysql线程状态怎么看,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。简单翻译下:After create当线程在创建表的

这篇文章主要介绍了Mysql线程状态怎么看,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

简单翻译下:

  • After create

    当线程在创建表的函数末尾创建表(包括内部临时表)时,会发生这种情况。即使由于某些错误而无法创建表,也会使用此状态。

  • Analyzing

    线程正在计算MyISAM表键分布(例如,for ANALYZE TABLE)。

  • checking permissions

    线程正在检查服务器是否具有执行语句所需的权限。

  • Checking table

    该线程正在执行表检查操作。

  • cleaning up

    该线程已经处理了一个命令,并准备释放内存并重置某些状态变量。

  • closing tables

    该线程正在将更改的表数据刷新到磁盘并关闭已使用的表。这应该是一个快速的操作。如果没有,请验证您的磁盘空间剩余。

  • converting HEAP to ondisk

    该线程正在将内部临时表从 MEMORY表转换为磁盘表。

  • copy to tmp table

    线程正在处理一个ALTER TABLE语句。在创建具有新结构的表但在将行复制到其中之前,将发生此状态。

    对于处于此状态的线程,可以使用性能模式来获取有关复制操作的进度。

  • Copying to group table

    如果语句具有不同的条件ORDER BYGROUP BY标准,则按组对行进行排序并将其复制到临时表。

  • Copying to tmp table

    服务器正在复制到内存中的临时表。

  • altering table

    服务器正在执行就地 ALTER TABLE

  • Copying to tmp table on disk

    服务器正在复制到磁盘上的临时表。

  • Creating index

    线程正在处理ALTER TABLE ... ENABLE KEYS一个MyISAM表。

  • Creating sort index

    线程正在处理SELECT使用内部临时表解析的线程 。

  • creating table

    线程正在创建一个表。这包括创建临时表。

  • Creating tmp table

    该线程正在内存或磁盘上创建临时表。如果表在内存中创建但稍后转换为磁盘表,则该操作期间的状态将为Copying to tmp table on disk

  • committing alter table to storage engine

    服务器已完成就地 ALTER TABLE并提交结果。

  • deleting from main table

    服务器正在执行多表删除的第一部分。它仅从第一个表中删除,并保存用于从其他(引用)表中删除的列和偏移量。

  • deleting from reference tables

    服务器正在执行多表删除的第二部分,并从其他表中删除匹配的行。

  • discard_or_import_tablespace

    线程正在处理ALTER TABLE ... DISCARD TABLESPACEALTER TABLE ... IMPORT TABLESPACE声明。

  • end

    这发生在结束,但的清理之前 ALTER TABLECREATE VIEWDELETEINSERTSELECT,或 UPDATE语句。

  • executing

    该线程已开始执行语句。

  • Execution of init_command

    线程正在执行init_command系统变量值中的语句 。

  • freeing items

    线程执行了一个命令。在此状态期间完成的一些项目的释放涉及查询缓存。这种状态通常紧随其后cleaning up

  • FULLTEXT initialization

    服务器正准备执行自然语言全文搜索。

  • init

    出现这种情况的初始化之前 ALTER TABLEDELETEINSERTSELECT,或 UPDATE语句。服务器在此状态下采取的操作包括刷新二进制日志InnoDB日志和一些查询缓存清理操作。

    对于end状态,可能会发生以下操作:

    • 删除表中的数据后删除查询缓存条目

    • 将事件写入二进制日志

    • 释放内存缓冲区,包括blob

  • Killed

    有人KILL 向线程发送了一个语句,它应该在下次检查kill标志时中止。在mysql的每个主循环中检查该标志,但在某些情况下,线程可能仍然需要很短的时间才能死掉。如果线程被某个其他线程定,则一旦另一个线程释放其锁定,kill就会生效。

  • logging slow query

    该线程正在向慢查询日志写一条语句。

  • login

    连接线程的初始状态,直到客户端成功通过身份验证。

  • manage keys

    服务器正在启用或禁用表索引

  • NULL

    该状态用于该SHOW PROCESSLIST状态。

  • Opening tables

    线程正在尝试打开一个表。这应该是非常快的程序,除非有什么东西阻止打开。例如,一个ALTER TABLE或一个 LOCK TABLE语句可以阻止在语句结束之前打开表。

  • optimizing

    服务器正在对查询执行初始优化

  • preparing

    在查询优化期间发生此状态。

  • Purging old relay logs

    该线程正在删除不需要的中继日志文件。

  • query end

    处理查询后但在freeing items状态之前发生此 状态。

  • Receiving from client

    服务器正在从客户端读取数据包。Reading from net在Mysql 5.7.8之前调用此状态。

  • Removing duplicates

    该查询使用 SELECT DISTINCT的方式是MySQL无法在早期阶段优化掉不同的操作。因此,在将结果发送到客户端之前,MySQL需要额外的阶段来删除所有重复的行。

  • removing tmp table

    该线程在处理SELECT 语句后删除内部临时表。如果未创建临时表,则不使用此状态。

  • rename

    该线程正在重命名一个表。

  • rename result table

    线程正在处理一个ALTER TABLE语句,创建了新表,并重命名它以替换原始表。

  • Reopen tables

    该线程获得了表的锁定,但在获取锁定之后注意到基础表结构发生了变化。它释放了锁,关闭了桌子,并试图重新打开它。

  • Repair by sorting

    修复代码使用排序来创建索引。

  • preparing for alter table

    服务器正准备执行就地 ALTER TABLE

  • Repair done

    该线程已完成对MyISAM表的多线程修复 。

  • Repair with keycache

    修复代码通过密钥缓存逐个创建密钥。这比慢得多Repair by sorting

  • Rolling back

    该线程正在回滚一个事务

  • Saving state

    对于MyISAM诸如修复或分析的表操作,线程将新表状态保存到.MYI文件头。状态包括诸如行数, AUTO_INCREMENT计数器和密钥分发之类的信息。

  • Searching rows for update

    该线程正在进行第一阶段以在更新之前查找所有匹配的行。如果 UPDATE要更改用于查找所涉及行的索引,则必须执行此操作。

  • Sending data

    线程正在读取和处理SELECT语句的行 ,并将数据发送到客户端。由于在此状态期间发生的操作往往会执行大量磁盘访问(读取),因此它通常是给定查询生命周期中运行时间最长的状态。

  • Sending to client

    服务器正在向客户端写入数据包。Writing to net在MySQL 5.7.8之前调用此状态。

  • setup

    线程正在开始一个ALTER TABLE操作。

  • Sorting for group

    线程正在进行排序以满足 GROUP BY

  • Sorting for order

    线程正在进行排序以满足ORDER BY

  • Sorting index

    该线程正在对索引页面进行排序,以便在MyISAM表优化操作期间进行更有效的访

  • Sorting result

    对于SELECT声明,这类似于Creating sort index非临时表。

  • statistics

    服务器正在计算统计信息以开发查询执行计划。如果线程长时间处于此状态,则服务器可能是磁盘绑定执行其他工作。

  • System lock

    线程已经调用 mysql_lock_tables() ,并且线程状态尚未更新。这是一个非常普遍的状态,可能由于多种原因而发生。

    例如,线程将请求或正在等待表的内部或外部系统锁定。InnoDB在执行期间等待表级锁定时会 发生这种情况LOCK TABLES。如果此状态是由外部锁的请求引起的,并且您没有使用多个访问相同 表的mysqld服务器,则MyISAM可以使用该--skip-external-locking 选项禁用外部系统锁 。但是,默认情况下禁用外部锁定,因此该选项很可能无效。对于 SHOW PROFILE,这个状态意味着线程正在请求锁定(不等待它)。

  • update

    线程正准备开始更新表。

  • Updating

    线程正在搜索要更新的行并正在更新它们。

  • updating main table

    服务器正在执行多表更新的第一部分。它仅更新第一个表,并保存用于更新其他(引用)表的列和偏移量。

  • updating reference tables

    服务器正在执行多表更新的第二部分,并更新其他表中的匹配行。

  • User lock

    该线程将要求或正在等待通过GET_LOCK()呼叫请求的咨询锁 。对于 SHOW PROFILE,此状态表示线程正在请求锁定(不等待它)。

  • User sleep

    线程已经调用了一个 SLEEP()调用。

  • Waiting for commit lock

    FLUSH TABLES WITH READ LOCK 正在等待提交锁定。

  • Waiting for global read lock

    FLUSH TABLES WITH READ LOCK 正在等待全局读锁定或read_only正在设置全局 系统变量。

  • Waiting for tables

    线程得到一个通知,表明表的底层结构已经改变,它需要重新打开表以获得新结构。但是,要重新打开表,它必须等到所有其他线程关闭了相关表。

  • Waiting for table flush

    线程正在执行FLUSH TABLES并且正在等待所有线程关闭它们的表,或者线程得到一个表的基础结构已经更改的通知,并且它需要重新打开表以获取新结构。但是,要重新打开表,它必须等到所有其他线程关闭了相关表。

  • Waiting for *lock_type* lock

    服务器正在等待THR_LOCK从元数据锁定子系统获取 锁定或锁定,其中 lock_type指示锁定的类型。

    此状态表示等待 THR_LOCK

    这些状态表示等待元数据锁定:

    • Waiting for event metadata lock

    • Waiting for global read lock

    • Waiting for schema metadata lock

    • Waiting for stored function metadata lock

    • Waiting for stored procedure metadata lock

    • Waiting for table metadata lock

    • Waiting for trigger metadata lock

    • Waiting for table level lock

  • Waiting on cond

    线程正在等待条件变为真的通用状态。没有具体的州信息。

  • Writing to net

    服务器正在将数据包写入网络Sending to client从MySQL 5.7.8开始调用此状态。

感谢你能够认真阅读完这篇文章,希望小编分享的“MySQL线程状态怎么看”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网数据库频道,更多相关知识等着你来学习!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL线程状态怎么看

本文链接: https://www.lsjlt.com/news/63388.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • sql中外码怎么设置
    sql 中外码设置步骤:确定父表和子表。在子表中创建外码列,引用父表主键。使用 foreign key 约束将外码列链接到父表主键。指定引用动作,以处理父表数据更改时的子表数据操作。 ...
    99+
    2024-05-15
  • sql中having是什么
    having 子句用于过滤分组结果,应用于分组后的数据集。它与 where 子句类似,但基于分组结果而不是原始数据。用法:1. 过滤分组后的聚合值。2. 根据分组后的...
    99+
    2024-05-15
  • 在sql中空值用什么表示
    在 sql 中,空值表示未知或不存在的值,可使用 null、空字符串或特殊值表示。处理空值的方法包括使用操作符(is null/is not null)、coalesce 函数(返回第一...
    99+
    2024-05-15
    oracle
  • sql中number什么意思
    sql 中的 number 类型用于存储数值数据,包括小数和整数,特别适合货币、度量和科学数据。其精度由 scale(小数点位数)和 precision(整数字段和小数字段总位数)决定。...
    99+
    2024-05-15
  • sql中空值赋值为0怎么写
    可以通过使用 coalesce() 函数将 sql 中的空值替换为指定值(如 0)。coalesce() 的语法为 coalesce(expression, replacement),其...
    99+
    2024-05-15
  • sql中revoke语句的功能
    revoke 语句用于撤销指定用户或角色的权限或角色成员资格。可撤销的权限包括 select、insert、update、delete 等,撤销的对象类型包括表、视图、存储过程...
    99+
    2024-05-15
    敏感数据
  • sql中REVOKE是什么意思
    revoke 是 sql 中用于撤销用户或角色对数据库对象权限的命令。它通过撤销权限类型、对象级别和目标权限来实现:权限类型:撤销 select、insert、update、d...
    99+
    2024-05-15
  • sql中sp是什么意思
    sql中的sp是存储过程的缩写,它是一种预编译的、已命名的sql语句块,存储在数据库中,可以被用户通过简单命令调用。存储过程的特点有:可重用性、模块化、性能优化、安全性、事务支持。存储过...
    99+
    2024-05-15
    敏感数据
  • sql中references是什么意思
    sql 中的 references 关键字用于在外键约束中定义表之间的父-子关系。外键约束确保子表中的行都引用父表中存在的行,从而维护数据完整性。references 语法的格式为:fo...
    99+
    2024-05-15
  • sql中判断字段为空怎么写
    sql 中可通过 4 种方法判断字段是否为空:1)is null 运算符;2)is not null 运算符;3)coalesce() 函数;4)case 语句。例如,查询所有 colu...
    99+
    2024-05-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作