File tree Expand file tree Collapse file tree 1 file changed +2
-2
lines changed Expand file tree Collapse file tree 1 file changed +2
-2
lines changed Original file line number Diff line number Diff line change @@ -174,9 +174,9 @@ set global query_cache_type=1;
174
174
set global query_cache_size =600000;
175
175
```
176
176
177
- 如上,** 开启查询缓存后在同样的查询条件以及数据情况下,会直接在缓存中返回结果** 。这里的查询条件包括查询本身、当前要查询的数据库、客户端协议版本号等一些可能影响结果的信息。因此任何两个查询在任何字符上的不同都会导致缓存不命中。此外,如果查询中包含任何用户自定义函数、存储函数、用户变量、临时表、MySQL 库中的系统表,其查询结果也不会被缓存。
177
+ 如上,** 开启查询缓存后在同样的查询条件以及数据情况下,会直接在缓存中返回结果** 。这里的查询条件包括查询本身、当前要查询的数据库、客户端协议版本号等一些可能影响结果的信息。( ** 查询缓存不命中的情况:(1) ** ) 因此任何两个查询在任何字符上的不同都会导致缓存不命中。此外,( ** 查询缓存不命中的情况:(2) ** ) 如果查询中包含任何用户自定义函数、存储函数、用户变量、临时表、MySQL 库中的系统表,其查询结果也不会被缓存。
178
178
179
- 缓存建立之后,MySQL 的查询缓存系统会跟踪查询中涉及的每张表,如果这些表(数据或结构)发生变化,那么和这张表相关的所有缓存数据都将失效。
179
+ ( ** 查询缓存不命中的情况:(3) ** ) ** 缓存建立之后** ,MySQL 的查询缓存系统会跟踪查询中涉及的每张表,如果这些表(数据或结构)发生变化,那么和这张表相关的所有缓存数据都将失效。
180
180
181
181
** 缓存虽然能够提升数据库的查询性能,但是缓存同时也带来了额外的开销,每次查询后都要做一次缓存操作,失效后还要销毁。** 因此,开启查询缓存要谨慎,尤其对于写密集的应用来说更是如此。如果开启,要注意合理控制缓存空间大小,一般来说其大小设置为几十 MB 比较合适。此外,** 还可以通过 sql_cache 和 sql_no_cache 来控制某个查询语句是否需要缓存:**
182
182
You can’t perform that action at this time.
0 commit comments