温馨提示×

温馨提示×

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

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

MySQL中SQL_NO_CACHE怎么用

发布时间:2021-10-29 17:48:50 来源:亿速云 阅读:1215 作者:小新 栏目:MySQL数据库

这篇文章主要介绍了MySQL中SQL_NO_CACHE怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

SQL_CACHE意思是说,查询的时候使用缓存。


SQL_NO_CACHE解释如下:

1.对当前query不使用数据库已有缓存来查询,则当前query花费时间会多点


2.对当前query的产生的结果集不缓存至系统query cache里,则下次相同query花费时间会多点

当我们想用SQL_NO_CACHE来禁止结果缓存时发现结果和我们的预期不一样,查询执行的结果仍然是缓存后的结果。其实,SQL_NO_CACHE的真正作用是禁止缓存查询结果,但并不意味着cache不作为结果返回给query。

SQL_NO_CACHE的官方解释如下:

SQL_NO_CACHE means that the query result is not cached. It does not mean that the cache is not used to answer the query.

You may use RESET QUERY CACHE to remove all queries from the cache and then your next query should be slow again. Same effect if you change the table, because this makes all cached queries invalid.


以下是实验过程:


mysql> use test
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A


Database changed
mysql>  select count(*) from fp_data;
+----------+
| count(*) |
+----------+
|   158404 |
+----------+
1 row in set (0.05 sec)




mysql> select count(*) from fp_data;
+----------+
| count(*) |
+----------+
|   158404 |
+----------+
1 row in set (0.03 sec)




mysql> select SQL_CACHE count(*) from fp_data;
+----------+
| count(*) |
+----------+
|   158411 |
+----------+
1 row in set (0.03 sec)




mysql> select SQL_NO_CACHE count(*) from fp_data;
+----------+
| count(*) |
+----------+
|   158404 |
+----------+
1 row in set (0.02 sec)

感谢你能够认真阅读完这篇文章,希望小编分享的“MySQL中SQL_NO_CACHE怎么用”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

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

AI