其他分享
首页 > 其他分享> > 四十、查询缓存

四十、查询缓存

作者:互联网

一、什么是查询缓存

很多数据库产品都能缓存查询的执行计划,对于相同类型的 SQL 就可以跳过 SQL 解析和执行计划生成阶段。 MySQL 在某种场景下也可以实现,但是 MySQL 还有另一中不同的缓存类型:缓存完成的 SELECT 查询结果,也就是查询缓存。
MySQL 将缓存存放在一个引用表中,类似 HashMap 的数据结构, Key 查询 SQL 语句, Value 则是查询结果。当发起查询时,会使用 SQL 语句去缓存中查询,如果命中则立即返回缓存的结果集。

Tip:

  1. 通过 show variables like '%query_cache%';语句获取是否开启了查询缓存,在 MySQL 中默认查询缓存是开启的;
  2. 可以使用 SQL_NO_CACHE 在 SELECT 中禁止缓存查询结果,语法为 SELECT SQL_NO_CACHE...;
  3. MySQL 8.0 中已删除查询缓存功能。

 

标签:语句,缓存,SQL,查询,四十,MySQL,SELECT
来源: https://blog.51cto.com/u_11739124/2984768