Rumah  >  Artikel  >  pangkalan data  >  MySQL数据库自身缓存设置和分页

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

黄舟
黄舟asal
2017-08-07 13:27:521627semak imbas

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语句的大小写。

Atas ialah kandungan terperinci MySQL数据库自身缓存设置和分页. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn