昨天参加平安面试问了我一个问题:说说MySQL 执行一条查询语句的内部执行流程?

Stella ·
更新时间:2024-09-21
· 592 次阅读

昨天参加平安面试问了我一个问题:说说MySQL 执行一条查询语句的内部执行流程?

客户端先通过连接器连接到 MySQL 服务器; 连接器权限验证通过之后,先查询是否有查询缓存,如果有缓存(之前执行过此语句)则直接返回缓存数据,如果没有缓存则进入分析器; 分析器会对查询语句进行语法分析和词法分析,判断 SQL 语法是否正确,如果查询语法错误会直接返回给客户端错误信息,如果语法正确则进入优化器; 优化器是对查询语句进行优化处理,例如一个表里面有多个索引,优化器会判别哪个索引性能更好; 优化器执行完就进入执行器,执行器则开始执行语句进行查询比对了,直到查询到满足条件的所有数据,然后进行返回。
段远山 原创文章 197获赞 195访问量 1万+ 关注 私信 展开阅读全文
作者:段远山



平安 面试 Mysql

需要 登录 后方可回复, 如果你还没有账号请 注册新账号