【问题标题】:query_cache_min_res_unit; What is it and what does it do?query_cache_min_res_unit;它是什么,它有什么作用?
【发布时间】:2011-01-14 16:21:33
【问题描述】:

我正在 MySQL 中设置缓存。

有人可以解释一下query_cache_min_res_unit吗? 它有什么作用?

我已经阅读了手册,它并没有很好地解释。

感谢详细信息...或示例...

谢谢

【问题讨论】:

    标签: php sql mysql database caching


    【解决方案1】:

    query_cache_min_res_unit 是一个变量,可用于优化查询,具体取决于您可能使用的大量结果集。

    根据定义,该值是 MySQL 将分配用于存储查询的 最小内存量。

    您可能希望 this 值大致为平均查询大小。每个数据库都有不同的最小值,具体取决于您使用的集合的大小。

    这是我的:

    mysql> show variables like "query%";
    +------------------------------+---------+
    | Variable_name                | Value   |
    +------------------------------+---------+
    | query_alloc_block_size       | 8192    |
    | query_cache_limit            | 1048576 |
    | query_cache_min_res_unit     | 4096    |
    | query_cache_size             | 0       |
    | query_cache_type             | ON      |
    | query_cache_wlock_invalidate | OFF     |
    | query_prealloc_size          | 8192    |
    +------------------------------+---------+
    7 rows in set (0.25 sec)
    

    如你所见,我的最小值是 4096 字节。

    作为后续,您可以在Optimizing the MySQL Query Cache阅读更多内容

    【讨论】:

    • 谢谢,我想我明白了。那篇文章不错!顺便说一句,我认为变量中的数字是字节,而不是 KB……我不确定……谢谢 :)
    • 你可能是对的,我还是会编辑它,因为现在我自己也很怀疑。
    • 查询缓存分配具有由 query_cache_min_res_unit 系统变量给出的最小大小的块。执行查询时,将最后一个结果块修剪为实际数据大小,以便释放未使用的内存。
    • 如果您点击链接的文章;注意底部的 cmets!
    猜你喜欢
    • 2019-04-26
    • 2016-04-29
    • 2017-03-02
    • 2012-10-04
    • 1970-01-01
    • 2017-06-20
    • 2019-12-25
    • 2010-10-02
    • 2015-02-06
    相关资源
    最近更新 更多