MySQL中的SQL流程分析简述

分析MySQL中这条语句的整个流程

update table_a set c1=xx where c2=xxx

朋友考我的一个问题在此处列出个人见解

1 客户端连接进来首先进行权限验证

2 验证通过后 进入SQL接口,接收用户的SQL命令

3 SQL命令到解释器中进行验证和解析

4 解析后查询优化器会对查询进行优化生成最终查询结果

5 如果查询的结果在缓存中则直接从缓存中获取返回给客户端

6 如果没有则调用存储引擎的API接口从文件系统中获取返回给客户端,同时写入到缓存中

MySQL的体系结果参考图

原文地址:https://www.cnblogs.com/olinux/p/5196193.html