赞
踩
大多数的 MySQL 服务器都开启了查询缓存。这是提高性能最有效的方法之
一,而且是由MySQL 数据库引擎进行处理的。当有很多相同的查询被执行了多
次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不
用操作表而直接访问缓存结果了。
用于频繁提交同一个语句,并且该表数据变化不是很频繁的场景,例如一些静态页面,或者页面中的某块不经常发生变化的信息。
由于查询缓存需要缓存最新数据结果,因此表数据发生任何变化(insert、update、delete或其他可能产生数据变化的操作),都会导致查询缓存被刷新。因而,对于一个更新频率非常低而只读查询频率非常高的场景下,打开查询缓存还是比较有优势的。
查询缓存严格要求2次SQL请求要完全一样,包括SQL语句,连接的数据库、协议版本、字符集等因素都会影响。下面为查询缓存不适用的几个场景:
可见,使用查询的缓存的限制非常多。当使用场景中以只读为主,很少有更新的情况时,再考虑 。
query_cache_type = 1
query_cache_size = 600000
set global query_cache_type = 1;
set global query_cache_size = 600000;
注意:上述两种开启缓存的方式都需要重启mysql才能生效。
参考:
https://www.cnblogs.com/baker95935/p/7710115.html
http://blog.itpub.net/26736162/viewspace-2692161/
https://www.cnblogs.com/haitaoli/p/10828564.html
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。