温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何进行MySQL查询缓存的实际应用代码分析

发布时间:2021-12-01 09:55:47 来源:亿速云 阅读:143 作者:柒染 栏目:数据库

这篇文章给大家介绍如何进行MySQL查询缓存的实际应用代码分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

以下主要介绍的是MySQL 查询缓存的实际应用代码以及查看MySQL 查询缓存的大小 ,碎片整理,清除缓存以及监视MySQL 查询缓存性能的相关内容的描述,以下就是具体内容的描述,希望在你今后的学习中会有所帮助。

  1. MySQL> select @@query_cache_type;  

  2. +--------------------+  

  3. | @@query_cache_type |  

  4. +--------------------+  

  5. | ON |   

  6. +--------------------+  

  7. MySQL> set query_cache_type=off;  

  8. MySQL> set query_cache_type=on;   100.Com

  9. MySQL>   

  10. MySQL> select sql_cache id, title, body from article;  

  11. MySQL> select sql_no_cache id, title, body from article;  

  12. MySQL> show variables like have_query_cache;  

  13. +------------------+-------+  

  14. | Variable_name | Value |  

  15. +------------------+-------+  

  16. | have_query_cache | YES |   

  17. +------------------+-------+   phP100.Com

  18. 1 row in set (0.00 sec)  

查看MySQL 查询缓存的大小

  1. MySQL> select @@global.query_cache_size;  

  2. +---------------------------+  

  3. | @@global.query_cache_size |  

  4. +---------------------------+  

  5. | 16777216 |   

  6. +---------------------------+  

  7. 1 row in set (0.00 sec)  

  8. MySQL> select @@query_cache_size;  

  9. +--------------------+   phP100.Com

  10. | @@query_cache_size |  

  11. +--------------------+  

  12. | 16777216 |   

  13. +--------------------+  

  14. 1 row in set (0.00 sec) 

查看最大缓存结果,如果结果集大于该数,不缓存。

  1. MySQL> select @@global.query_cache_limit;  

  2. +----------------------------+  

  3. | @@global.query_cache_limit |  

  4. +----------------------------+  

  5. | 1048576 |   

  6. +----------------------------+  

  7. 1 row in set (0.00 sec) 

  碎片整理

  1. MySQL> flush query cache  

  2. -> ;  

  3. Query OK, 0 rows affected (0.00 sec) 

  清除缓存

  1. MySQL> reset query cache   phP100.Com

  2. -> ;  

  3. Query OK, 0 rows affected (0.00 sec

监视MySQL 查询缓存性能:

  1. MySQL> flush tables;  

  2. Query OK, 0 rows affected (0.04 sec)  

  3. MySQL> show status like qcache%;  

  4. +-------------------------+----------+  

  5. | Variable_name | Value |  

  6. +-------------------------+----------+  

  7. | Qcache_free_blocks | 1 |   

  8. | Qcache_free_memory | 16768408 |   

  9. | Qcache_hits | 6 |   

  10. | Qcache_inserts | 36 |    PhP100.Com

  11. | Qcache_lowmem_prunes | 0 |   

  12. | Qcache_not_cached | 86 |   

  13. | Qcache_queries_in_cache | 0 |   

  14. | Qcache_total_blocks | 1 |   

  15. +-------------------------+----------+  

  16. 8 rows in set (0.06 sec)  

查看当前缓存中有多少条信息:

  1. MySQL> show status like qcache_q%;  

  2. +-------------------------+-------+  

  3. | Variable_name | Value |  

  4. +-------------------------+-------+  

  5. | Qcache_queries_in_cache | 0 |   

  6. +-------------------------+-------+  

  7. 1 row in set (0.00 sec)  

关于如何进行MySQL查询缓存的实际应用代码分析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI