2013-06-25 45 views

回答

1

刚刚通过文档和一些搜索,但似乎没有查询缓存文件。

The query cache operates通过将数据存储在存储器中(尽管它没有指定到底如何),但限制为“查询必须完全相同(字节的字节)才能被视为相同“它很可能是哈希查询。

您可以view some information关于查询缓存的状态(包括空闲内存和缓存中的匹配),这些都使用SQL查询SHOW STATUS LIKE 'Qcache%';完成。我还没有看到一个允许完整查看缓存的命令,尽管我不确定它是否可能(或有用)如果他们正在查询散列。 This StackOverflow answer也提到关于哈希的可能性并且不能查看存储的数据。

我打算通过查看查询缓存来进行猜测,您可能也想要modify it's configuration。您可以修改可能会影响查询整体性能的缓存大小,使其更好或更差。就我个人而言,我从来没有修改它,除非你运行一个非常大的网站,你可能不需要。

+0

感谢您的回答,我没有在文档中看到任何东西。我想查看该文件,以便查看来自我的某个网站的实际查询。似乎这是不可能的。如果没有其他人有解决方案,我会鼓励你并接受一点。 – n0pe

+0

我确实看到了这种功能的需求,尽管您可能更适合使用网站代码和数据库之间的某一层,可以为您执行此类调试/日志记录。显然这并不总是可能的,因为它可能需要大量的代码重新设计,但这是唯一的另一种方式。 – Turnerj

+0

是的,这样做更有意义。事实上,在这里得到了确认:http://stackoverflow.com/questions/4187794/how-to-list-cached-queries-in-mysql-qcache-queries-in-cache?lq=1 – n0pe

1

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