Web性能优化学习MySQL查询缓存

在完成协会网站后,最近在学习Web性能优化。看咯很多博客和专栏,自己总结整理了一部分自己能用到的。启用MySQL查询缓存可以极大地减低数据库服务器的CPU使用率。

一.下面是自己在wamp集成环境中开启MySQL查询缓存的步骤。

1.打开MySQL consle,敲入"show variables like '%query_cache';"

Web性能优化学习MySQL查询缓存_第1张图片

并没有出现query_cache_type 的信息,说明并没有开启查询缓存。

2.修改配置文件,开启查询缓存;在配置文件中找到[wampmysqld],在其下添加query_cache_size = 20M
query_cache_type = ON

3.重启MySQL服务,敲入 service mysql restart

4.验证是否开启查询缓存,敲入第一步中的命令

Web性能优化学习MySQL查询缓存_第2张图片

可见已经开启了查询缓存

二.查询缓存(QC)在哪几种情况下不适用

弊端:下面是4个如果。如果一个被频繁更新的表被应用了QC,可能会加重数据库的负担,而不是减轻负担。如果一个表被更新,那么和这个表相关的SQL的所有QC都会被失效。如果一个联合查询里涉及到了表A和表B,表A或者表B的其中一个被更新(update或者delete),这个查询的QC将会失效。如果那些查询很分散的SQL语句,也不应该使用QC,因为不一样的SQL 文本,QC在这里就几乎不起作用了,因为缓存的数据几乎是不会被用到的,它们只会在内存里占地方。



你可能感兴趣的:(DB,web开发,SQL,MySQL)