【问题标题】:Where is the MySQL query cache file saved?MySQL查询缓存文件保存在哪里?
【发布时间】:2013-06-25 19:26:29
【问题描述】:

我想查看我的 MySQL 查询缓存文件的转储,但似乎无法确定它的存储位置。我在一台 Windows 机器上——这并不容易。

【问题讨论】:

    标签: mysql file query-cache


    【解决方案1】:

    刚刚浏览了文档并进行了一些搜索,但似乎没有用于查询缓存的文件。

    The query cache operates 通过将数据存储在内存中(尽管它没有指定如何精确),但从外观上看,“查询必须完全相同(字节对字节)才能成为被视为相同” 很可能它正在对查询进行哈希处理。

    您可以view some information 了解查询缓存的状态,包括可用内存和缓存命中,这些都是通过 SQL 查询SHOW STATUS LIKE 'Qcache%'; 完成的。我还没有看到允许完整查看缓存的命令,尽管我不确定如果他们对查询进行散列处理是否可能(或有用)。 This StackOverflow answer 还提到了散列的可能性,并且无法查看存储的数据。

    我想通过查看查询缓存来进行猜测,您可能还想查看modify it's configuration。您可以修改缓存大小,这可能会更好或更差地影响查询的整体性能。就个人而言,我从未修改过它,除非您正在运行一些非常大的网站,否则您可能不需要。

    【讨论】:

    • 感谢您的回答,我也没有在文档中看到任何内容。我想查看该文件,以便查看我的一个网站实际发出的查询。好像那是不可能的了。如果没有其他人有解决方案,我会支持你并接受一点。
    • 我确实看到了对此类功能的需求,尽管您可能最好在您的网站代码和可以为您执行此类调试/日志记录的数据库之间添加一些层。显然,这并不总是可行的,因为它可能需要对代码进行大量重新设计,但这是我想不到的唯一方法。
    • 是的,这更有意义。事实上,刚刚在这里得到了确认:stackoverflow.com/questions/4187794/…
    【解决方案2】:

    据我所知,查询缓存存储在内存中,而不是文件中。

    【讨论】:

      猜你喜欢
      • 2018-07-05
      • 2010-12-25
      • 1970-01-01
      • 2016-04-07
      • 2014-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多