一条查询sql是如何执行的 读书笔记
Myqsl的结构如下: 连接器:负责进行鉴权,当进行数据库连接时,会进入连接器进行鉴权。 解析器:对sql进行解析,如果sql不准确,将会在这层抛出异常。如果开启了缓存,将进行缓存查询。 优化器:sql将会进行优化,比如确认join的链接顺序,有多个单列索引时,应该使用哪个。 执行器:执行脚本,如果没有设置默认是调用innodb引擎。 缓存:如果开启缓存,是以key-value的形式存储,key是执行的sql,value是data,但是要慎用缓存,因为缓存会频繁的写入数据,会导致缓存频繁刷新。缓存命中率会降低。 query_cache_type设置成DEMAND可以不使用缓存设置。sql使用
下载地址
用户评论