文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

如何在mysql中查询缓存

2023-06-07 18:40

关注

本篇文章为大家展示了如何在mysql中查询缓存,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

一、查询缓存的实现流程

如何在mysql中查询缓存

二、配置查询缓存

查看当前的mysql数据库是否支持查询缓存

SHOW VARIABLES LIKE 'have_query_cache';

如何在mysql中查询缓存

查看当前mysql是否开启了查询缓存

SHOW VARIABLES LIKE 'query_cache_type';

如何在mysql中查询缓存

查看查询缓存的占用大小

SHOW VARIABLES LIKE 'query_cache_size';

如何在mysql中查询缓存

查看查询缓存的状态变量

SHOW STATUS LIKE 'Qcache%';

如何在mysql中查询缓存


参数含义
Qcache_free_blocks查询缓存中的可用内存块数
Qcache_free_memory查询缓存的可用内存量
Qcache_hits查询缓存命中数
Qcache_inserts添加到查询缓存的查询数
Qcache_lowmen_prunes由于内存不足而从查询缓存中删除的查询数
Qcache_not_cached非缓存查询的数量(由于 query_cache_type 设置而无法缓存或未缓存)
Qcache_queries_in_cache查询缓存中注册的查询数
Qcache_total_blocks查询缓存中的块总数

三、开启查询缓存

MySQL的查询缓存默认是关闭的,需要手动配置参数 query_cache_type , 来开启查询缓存。query_cache_type
该参数的可取值有三个


含义
OFF 或 0查询缓存功能关闭
ON 或 1查询缓存功能打开,SELECT的结果符合缓存条件即会缓存,否则,不予缓存,显式指定 SQL_NO_CACHE,不予缓存
DEMAND 或 2查询缓存功能按需进行,显式指定 SQL_CACHE 的SELECT语句才会缓存;其它均不予缓存

在usr/my.cnf中进行配置(配置文件也可能在/etc/my.cnf)

如何在mysql中查询缓存

重启服务

service mysql restart

测试

如何在mysql中查询缓存

如何在mysql中查询缓存
如何在mysql中查询缓存

四、查询缓存SELECT选项

可以在SELECT语句中指定两个与查询缓存相关的选项

SELECT SQL_CACUE id,name FROM customer;SELECT SQL_NO_CACHE id,name FROM customer;

五、查询缓存失效现象

SQL语句不一致

要想命中缓存,查询的SQL语句必须一致

SQL1:select count(*) from tb_item;SQL2:select count(*) from tb_Item;

查询语句有一些不确定的值

SQL1:select * from tb_item where updatetime < now() limit 1;SQL2:select user();SQL3:select database();

不使用任何表查询语句

select 'A';

查询mysql、information_schema或performance_schema数据库中的表

select * from information_schema.engines;

在存储的函数、触发器或事件主体内执行的查询

如题

表更改导致缓存删除

如果表更改,则使用该表的所有高速缓存查询都将变为无效并从高速缓存中删除。这包括使用 MERGE 映射到 已更改表的表的查询。一个表可以被许多类型的语句,如被改变 INSERT, UPDATE, DELETE, TRUNCATE TABLE, ALTER TABLE, DROP TABLE,或 DROP DATABASE 。

上述内容就是如何在mysql中查询缓存,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯