一条SQL语句在MySQL中是如何执行的?
1、客户端发送一条查询给服务器;然后客户端能做的就只是等待服务端的结果。
2、服务端收到查询后先检查查询缓存,如果刚好命中了缓存那么OK直接从缓存里拿出结果给客户端。如果没有那么就进入下一阶段。
3、服务器段解析SQL语句并进行一定的预处理,然后在优化器生成对应的执行计划(优化器的功能是找出最佳的执行计划);如果在这个过程中遇到任何错误都可能停止此次查询。
4、mysql根据优化器生成的最佳执行计划,通过存储引擎的API来执行查询,返回查询结果。
5、mysql将结果返回给客户端。
实际上mysql执行的每一步都比较复杂,此处仅就流程简要描述。
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有