mysql 一条sql语句如何执行的?

mysql 一条sql语句如何执行的?

文章部容源自:极客时间-林晓彬老师-MySQL实战45讲 学习整理

在了解一条查询语句如何执行之前,需要了解下MySQL的基本架构是怎样的,如下图所示:

可以看出,MySQL主要分成Server层和存储引擎两部分

那么该条sql语句的执行过程大概是:

(1)先通过连接器建立连接,这个时候需要用户名和密码进行认证

(2)连接成功后,就去查询缓存,如果缓存命中就直接返回,否则需要继续去分析器

(3)分析器需要做词法解析,识别里面的关键字例如SELECT等,并且判断你SQL语法是否正确

(4)经过了分析器后,优化器会对查询进行优化,例如使用那个索引等

(5)优化器执行完毕后,就需要执行器去执行啦,执行过程中还需要判断当前用户是否有查询的权限,如果有权限就调用存储引擎的接口查询数据返回即可

猜你喜欢

转载自blog.csdn.net/lchlaughing/article/details/109140032