数据库基础
题⽬ 01- ⼀条 SQL 语句在 MySQL 中是如何执⾏的?
以如下SQL查询语句为例:
1 select c_id, first_name, last_name from customer where c_id=14;
第⼀步:连接器
通过MYSQL Server层中内置的连接器,客户端可以与MYSQL建⽴连接,发送SQL操作语句对数
据库进⾏操作。
第⼆步:缓存
MYSQL内置缓存机制,当Server层接收到⼀条查询语句时,会去缓存中进⾏查询,如果有对应
的查询结果则直接返回。如果没有查到,就继续后续操作。当后续操作查询到对应的结果返回
后,就会将该条SQL语句Hash后作为key存⼊缓存,Value则是对应的查询结果。
不建议使⽤MYSQL内置缓存机制:
1. 成本较⾼,当某个数据库表发⽣改动后,所有的该表查询缓存都将会被清空。⽽在数据库表
数据会频繁发⽣更新的场景下,MYSQL内置缓存将会频繁被清空,作⽤不⼤反⽽消耗操作资
源。
2. 命中率低,仅当SQL语句完全相同时才会命中查询内容。若存在⼀张静态表,很⻓时间才会
更新⼀次。⽐如,⼀个系统配置表,那这张表上的