近期公司性能测试时,发现通讯录获取效率较低,主要原因还是数据未进行分页而且数据量过大导致,但是作为一种优化方案,还是提出了开启MySQL查询缓存的方案:
1. 在my.cnf中添加如下配置并重启,开启MySQL缓存
query_cache_size=256M
query_cache_limit=10M
query_cache_type=1
- query_cache_size为总缓存大小,官方推荐不要超过256M
- query_cache_limit为单条查询结果的最大缓存大小,如不设置,默认为1M
- query_cache_type表示缓存方式,0表示不开启缓存,1表示每条语句都开启缓存(除非指定不需要缓存),2表示如果查询语句中指定使用缓存,则进行缓存,具体见后续说明。
2. 开启完毕后,进入MySQL命令行,输入如下命令确认各参数是否设置正确:
show variables like '%query_cache%';
3. 可用如下命令确认缓存状态:
show status like 'Qcache%';
4. 重置缓存内容: