【问题标题】:Possible to exclude some query from Mysql query cache?可以从 Mysql 查询缓存中排除某些查询吗?
【发布时间】:2013-11-21 07:50:01
【问题描述】:

在我的站点中,我有 20 个可缓存的简单查询和 5 个非常大的查询,每个页面上都不可缓存。所以在这里激活 mysql 查询缓存不是一个好主意,确保我的 20 个简单查询将被缓存,但我为我的 5 个大查询浪费了 10% 的时间处理。我想说“嘿 mysql,不要尝试测试这 5 个查询“ 我想将查询缓存仅用于某些查询并排除其他查询..

那么,是否可以选择谁的查询可以使用 mysql, 或者如果没有,您是否知道其他解决方案或针对我的情况的建议?

谢谢你的灯 问候 杰斯

【问题讨论】:

  • 我用谷歌搜索了一个并找到了this article,如果你搜索“需求操作模式”它会告诉你一些东西。我对这个话题一无所知。听起来你可能……?所以也许这对你有意义?不知道...
  • 谢谢,我知道这篇文章,但他们不谈论解决方案,SQL_NO_CACHE!
  • 我很惊讶当你启用缓存时一切都变慢了。你是如何测量这 10% 的时间的?您是否尝试过调整缓存设置? dev.mysql.com/doc/refman/5.0/en/query-cache-configuration.html

标签: mysql sql performance caching query-cache


【解决方案1】:

解决方案非常简单: 只需在您的选择语句中使用 SQL_NO_CACHE 从 mysql 查询缓存中排除一些查询, 因此,如果此查询是否可缓存,这些查询将不会浪费时间处理测试!

SELECT SQL_NO_CACHE whatyouwant

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-14
    • 2012-06-19
    • 1970-01-01
    • 2010-09-07
    • 1970-01-01
    相关资源
    最近更新 更多