MySQL数据库自身缓存设置和分页

黄舟
黄舟 原创
2017-08-07 13:27:52 1268浏览

MySQL本身提供的一个可以缓存查询结果的功能,注意:严格基于sql语句的大小写。

数据库MySQL自身缓存设置使用:

1. 需要开启MySQL的自身缓存功能

# show variables like “%cache%”

1.png

2.query_cache_type : MySQL自身缓存的启动状态 默认是开启的,但是没有空间的大小

query_cache_size :MySQL自身缓存的大小,单位是B(字节)

如果需要设置MySQL的自身缓存为 32 M

# set global query_cache_size = 1024 * 1024 * 32;

做一些对比测试

 query_cache_size=0;

2.png

3. 查询

3.png

4.开启MySQL自身缓存(32M空间)

4.png

5. 当修改查询语句的单词大小写的时候,查询的结果不变,但是MySQL自身缓存认为这是不一样的查询,会进行在此缓存(MySQL自身的缓存是严格基于sql语句的大小写的)

5.png

分页:

1.

1).一般在分页的时候,都是这样处理的

# select * from news  limit offset,number;

当随着页数变大,MySQL执行查询的时间明显变长

2).主要是由于MySQL在执行limit操作的时候,是向这样操作的

先取出 offset+number 条数据,在丢弃 offset条数据,返回number数据。

6.png

7.png

8.png

2.

1).一般为了防止MySQL这类行为的出现可以使用:

# select * from news where id > 1000 limit 10;

2).通过下面的对比测试发现,在第二种分页处理的时候,还可以使用主键ID索引,明显速度可以加快。所以以后分页可以使用该方式处理。

9.png

10.png

注意事项

注意:严格基于sql语句的大小写。

以上就是MySQL数据库自身缓存设置和分页的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。