MYsql查询高速缓存设置


转自:http://blog.itpub.net/23682959/viewspace-631599/

1:通过have_query_cache服务器系统变量指示查询缓存是否可用:

mysql> SHOW VARIABLES LIKE 'have_query_cache';

 


2:为了设置查询缓存大小,设置query_cache_size系统变量。

设置为0表示禁用查询缓存。 默认缓存大小设置为0;也就是禁用查询缓存。

 

mysql> SET GLOBAL query_cache_size =40000 ;

当设置query_cache_size变量为非零值时,应记住查询缓存至少大约需要40KB来分配其数据结构。(具体大小取决于系统结构)。

mysql> SHOW WARNINGS\G

mysql>SHOW VARIABLES LIKE 'query_cache_size';

 

如果查询缓存大小设置为大于0,query_cache_type变量影响其工作方式。这个变量可以设置为下面的值:

·         0或OFF将阻止缓存或查询缓存结果。

·         1或ON将允许缓存,以SELECT SQL_NO_CACHE开始的查询语句除外。

·         2或DEMAND,仅对以SELECT SQL_CACHE开始的那些查询语句启用缓存。

 

例如,一个客户可以禁用自己的查询缓存,方法如下:

mysql> SET SESSION query_cache_type = OFF;

 

可以使用FLUSH QUERY CACHE语句来清理查询缓存碎片以提高内存使用性能。

该语句不从缓存中移出任何查询。

 

RESET QUERY CACHE语句从查询缓存中移出所有查询。

FLUSH TABLES语句也执行同样的工作。

你可能感兴趣的:(数据库)