一条sql执行流程

1.先是客户端与mysql建立连接

2.然后去判断这条sql语句在缓存中是否存在,如果存在直接返回结果,不存在则进入到解析器。

3.在解析器中,对sql进行语法分析,没错的话会生成语法树,

4.再进入到预处理器处理,到优化器优化sql,进入执行器执行sql语句,从存储引擎读取记录,返回结果和写入缓存。

相关推荐
这个DBA有点耶2 小时前
Change Buffer深入:二级索引写入的隐形加速器与它的代价
数据库·mysql·代码规范
for_ever_love__2 小时前
MySQL 事务隔离级别讲透:MVCC、幻读与四个级别怎么选
java·数据库·mysql·事务·mvcc·不可重复读·幻读
小鹿的周先生3 小时前
第19章-Agent
java·spring·ai
Knight_AL3 小时前
PostgreSQL Docker 数据库备份:pg_dump 与 SQL 格式备份的区别
数据库·docker·postgresql
写后端的胖头鱼3 小时前
Redis 的 RDB 和 AOF
java·数据库·redis
杨云龙UP3 小时前
Oracle 19c ADG 实时同步故障排查与修复:Standby Redo Log(SRL)文件缺失导致备库仅在主库归档后同步
数据库·oracle·adg·data guard·srl·ora-00313·ora-27037
jnrjian4 小时前
PG dblink 可以借用fdw 名字和密码直接访问
sql
步行cgn4 小时前
MySQL 报错:Access denied for user ‘root‘@‘localhost‘ 详解
java·数据库·spring
鱼宵5 小时前
Spring AI 生产化改造:记忆落 Redis、向量落 ES,重启再也不丢
人工智能·redis·spring·elasticsearch·springai
for_ever_love__5 小时前
Redis 数据类型全景:五种基础类型怎么用、什么时候用
数据库·redis·数据类型·hash·使用场景·zset·排行榜