MySQL面试题
基础
MySQL执行流程
MYSQL执行流程如下:
- 建立连接:客户端与MYSQL服务器建立连接,涉及TCP/IP握手以及身份验证
- 查询缓存:查询语句可能会被查询缓存命中,如果之前执行过相同的查询,并且结果没有发生变化,则直接从缓存中返回结果
- 解析SQL:数据库系统通过解析器对SQL查询语句进行词法分析和语法分析,构建语法树
- 执行SQL:
- 预处理阶段(Preprocessing):检查表和字段是否存在,将查询中的符号扩展为实际的列。
- 优化阶段(Query Optimization):数据库系统根据查询的成本考虑选择最优的执行计划。
- 执行阶段(Query Execution):数据库系统根据优化器选择的执行计划执行SQL查询,将符合条件的结果返回给客户端。
大约 17 分钟