mysql数据库缓存

开启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表示如果查询语句中指定使用缓存,则进行缓存,具体见后续说明。

前摘:      本人用的是phpstudy8.0;cmd切盘之后,输入'cd phpstudy_pro\Extensions\MySQL5.7.26\bin'进入mysql运行目录,              再'mysql -u root -p'连接数据库。
2.  开启完毕后,进入MySQL命令行,输入如下命令确认各参数是否设置正确:

show variables like '%query_cache%';
3.  可用如下命令确认缓存状态:

show status like 'Qcache%';
4.  重置缓存内容:

reset query cache;
除了上述简单开启外,额外说明如下:

开启缓存后,MySQL会根据查询语句与关联表进行查询结果的缓存,一旦关联表发生变化,就会使缓存内容失效;
虽然没有试验,但据说开启缓存应该是对相关表的插入更新效率是有一定影响的;
如前所述,query_cache_type=2时,只缓存明确需要缓存的SQL查询(在SELECT后加上SQL_CACHE),这样可以避免滥用缓存, 根据实际需要进行优化;当query_cache_type=1时,也可以通过SQL_NO_CACHE来关闭查询缓存。具体方式如下:
SELECT SQL_CACHE ... FROM ... WHERE ...
SELECT SQL_NO_CACHE ... FROM ... WHERE ...
       总的说来,在部分变化频率较低的表对应的查询语句中,开启Query Cache,对性能会有一定提升,其余情况下,个人感觉还是尽量少用,遇到问题再优化。

作为一名合格的程序员不仅需要好的代码编写能力,还需要掌握服务器相关知识,下面给大家推荐腾讯云搞活动的服务器,刚开始不需要服务器配置太好,纯当练手!点击链接查看活动:https://cloud.tencent.com/act/cps/redirect?redirect=33567&cps_key=32f906e6e5f3be5e8669b35951da56fc&from=activity

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值