两个不同的服务器上相同的Mysql Server缓存设置,但结果不同

时间:2018-12-17 15:35:40

标签: mysql caching mysql-5.6

我有2个运行MYSQL 5.6的VPS作为数据库服务器,并且都通过以下设置启用了缓存

have_query_cache = YES
query_cache_type = ON
query_cache_size = 16777216
query_cache_limit = 1048576   
query_cache_min_res_unit = 4096
query_cache_wlock_invalidate = OFF

通常,高速缓存在两台服务器上均有效,但有趣的是,有一个查询在其中一台服务器上缓存,但不能在第二台服务器上。

需要了解配置中缺少的内容。

1 个答案:

答案 0 :(得分:1)

此类问题可能有不同的原因,例如不同的操作系统,MYSQL版本或单个查询本身。

我只是中断查询并取一小部分并运行查询,并使用 SHOW STATUS LIKE'Qcache%'来同时检查高速缓存命中; 我意识到我正在将数字与字符串进行比较IF语句,不允许将查询放入缓存。 IF('2,000.00'= 0,1,2)不允许缓存查询。