加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL中SQL_NO_CACHE如何用

发布时间:2022-01-12 06:47:51 所属栏目:MySql教程 来源:互联网
导读:这篇文章主要介绍了MySQL中SQL_NO_CACHE怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 SQL_CACHE意思是说,查询的时候使用缓存。 SQL_NO_CACHE解释如下: 1.对当前query不使
      这篇文章主要介绍了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怎么用”这篇文章对大家有帮助。

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读