天天看点

高性能mysql笔记(八)查询执行基础

  • msql执行查询的步骤:
高性能mysql笔记(八)查询执行基础
  • 客户端/服务端通信协议

    他们之间的通信协议是“半双工”的,这就意味着在任意的时刻,要么是服务端向客户端发数据,要么是客户端向服务端发数据。这两个动作不能同时发生。

  • 查询状态
    show full processlist
               
    1.sleep
    线程等待客户端发送请求
               
    2.query
    线程正在执行查询,或者正在发送结果。
               
    3.locked
    线程正在等待锁
               
    4.Analyzing and statistics
    线程正在收集引擎信息 生成执行计划
               
    5.coping to tmp table
    正在执行查询,并且结果复制到一张临时表,要么是在做group by 要么是在做 union
               
    6.Sorting result
    正在对结果进行排序。
               
    7.sending data
    有多重情况:可能在多个状态之间传送数据,或者生成结果,或者紫爱香客户端返回数据。
               

继续阅读