• MySQL-缓存


    第一: query_cache_type 使用查询缓存的方式
    一般,我们会把 query_cache_type 设置为 ON,默认情况下应该是ON

    mysql> select @@query_cache_type;

    +——————–+
    | @@query_cache_type |
    +——————–+
    | ON |
    +——————–+
    这样 当我们执行 select id,name from tableName; 这样就会用到查询缓存。在 query_cache_type 打开的情况下,如果你不想使用缓存,需要指明select sql_no_cache id,name from tableName;当然也可以禁用查询缓存: mysql> set session uery_cache_type=off;
    这里我们不讨论这个,我们演示常用的设置。
    第二: 系统变量 have_query_cache 设置查询缓存是否可用

    mysql> show variables like 'have_query_cache';

    +——————+——-+
    | Variable_name | Value |
    +——————+——-+
    | have_query_cache | YES |
    +——————+——-+
    上面的显示,表示设置查询缓存是可用的。
    第三: 系统变量 query_cache_size
    表示查询缓存大小,也就是分配内存大小给查询缓存,如果你分配大小为0,
    那么 第一步 和 第二步 起不到作用,还是没有任何效果。

    mysql> select @@global.query_cache_size;

    +—————————+
    | @@global.query_cache_size |
    +—————————+
    | 16777216 |
    +—————————+
    上面是 mysql6.0设置默认的,之前的版本好像默认是0的,那么就要自己设置下。
    设置 set @@global.query_cache_size=1000000; 这里是设置1M左右,900多K。
    再次查看下 select @@global.query_cache_size;
    +—————————+
    | @@global.query_cache_size |
    +—————————+
    | 999424 |
    +—————————+
    显示我们设置新的大小,表示设置成功。
    第四: query_cache_limit 控制缓存查询结果的最大值
    例如: 如果查询结果很大, 也缓存????这个明显是不可能的。
    MySql 可以设置一个最大的缓存值,当你查询缓存数结果数据超过这个值就不会
    进行缓存。缺省为1M,也就是超过了1M查询结果就不会缓存。

    mysql> select @@global.query_cache_limit;

    +—————————-+
    | @@global.query_cache_limit |
    +—————————-+
    | 1048576 |
    +—————————-+
    这个是默认的数值,如果需要修改,就像设置缓存大小一样设置,使用set重新指定大小。
    好了,通过4个步骤就可以 打开了查询缓存,具体值的大小和查询的方式 这个因不同的情况来指定了。

    其它命令:

    1.碎片整理

    mysql> flush query cache;

    2.清除缓存

    mysql> reset query cache;

    3.查看缓存状态

    mysql> show status like 'qcache%';

    4.查看缓存中有多少条数据

    mysql> show status like 'qcache_q%';

  • 相关阅读:
    一些坑爹的错误
    鼠标键盘钩子捕获(初版)
    【Win10】我们无法更新系统保留的分区
    实验一:c++简单程序设计(1)
    《Java 8 in Action》Chapter 1:为什么要关心Java 8
    《Java 8 in Action》Chapter 2:通过行为参数化传递代码
    Java集合类综合
    Java内存模型
    你真的会阅读Java的异常信息吗?
    Java常用异常整理
  • 原文地址:https://www.cnblogs.com/wangxusummer/p/4078887.html
Copyright © 2020-2023  润新知