小编典典

MySQL处于“正在发送数据”状态时是什么意思?

mysql

如果Mysql查询是什么意思?

SHOW PROCESSLIST;

在“状态”列中返回“发送数据”?

我想这意味着查询已经执行,MySQL正在向客户端发送“结果”数据,但是我想知道为什么它要花这么多时间(最多一个小时)。

谢谢。


阅读 341

收藏
2020-05-17

共1个答案

小编典典

这是一种令人误解的状态。它应该被称为“读取和过滤数据”。

这意味着MySQL某些数据存储在磁盘(或内存)中,尚待读取和发送。它可能是表本身,索引,临时表,排序的输出等。

如果您有一个1M记录表(无索引),而您只需要一个记录,MySQL尽管扫描表尚未发送任何数据,但在扫描表时仍将其状态输出为“发送数据”。

2020-05-17