What does it mean when MySQL is in the state quot;Sending dataquot;?(MySQL处于“正在发送数据状态是什么意思?)
问题描述
如果Mysql查询是什么意思:
What does it mean if the Mysql query:
SHOW PROCESSLIST;
在状态"列中返回正在发送数据"?
returns "Sending data" in the State column?
我想这意味着查询已经执行并且 MySQL 正在向客户端发送结果"数据,但我想知道为什么它需要这么多时间(最多一个小时).
I imagine it means the query has been executed and MySQL is sending "result" Data to the client but I'm wondering why its taking so much time (up to an hour).
谢谢.
推荐答案
这是一种误导性的状态.它应该被称为读取和过滤数据".
This is quite a misleading status. It should be called "reading and filtering data".
这意味着 MySQL
有一些数据存储在磁盘(或内存)中,但尚未读取和发送.它可能是表本身、索引、临时表、排序输出等.
This means that MySQL
has some data stored on the disk (or in memory) which is yet to be read and sent over. It may be the table itself, an index, a temporary table, a sorted output etc.
如果你有一个 1M 的记录表(没有索引),你只需要一个记录,MySQL
仍然会输出状态为发送数据";在扫描表格时,尽管它尚未发送任何内容.
If you have a 1M records table (without an index) of which you need only one record, MySQL
will still output the status as "sending data" while scanning the table, despite the fact it has not sent anything yet.
MySQL 8.0.17 及更高版本:此状态不再单独指示,而是包含在 Executing 状态中.
MySQL 8.0.17 and later: This state is no longer indicated separately, but rather is included in the Executing state.
这篇关于MySQL处于“正在发送数据"状态是什么意思?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:MySQL处于“正在发送数据"状态是什么意思?


- 如何将 Byte[] 插入 SQL Server VARBINARY 列 2021-01-01
- 在SQL中,如何为每个组选择前2行 2021-01-01
- 如何将 SonarQube 6.7 从 MySQL 迁移到 postgresql 2022-01-01
- 导入具有可变标题的 Excel 文件 2021-01-01
- SQL 临时表问题 2022-01-01
- 如何使用 pip 安装 Python MySQLdb 模块? 2021-01-01
- 使用 Oracle PL/SQL developer 生成测试数据 2021-01-01
- 更改自动增量起始编号? 2021-01-01
- 以一个值为轴心,但将一行上的数据按另一行分组? 2022-01-01
- 远程 mySQL 连接抛出“无法使用旧的不安全身份验证连接到 MySQL 4.1+"来自 XAMPP 的错误 2022-01-01