我想优化我的MySQL DB。我注意到以下几点:
key_buffer_size
。我的问题是,我可以同时使用查询缓存和内存存储吗?以及key_buffer_size
的作用是什么?
我为什么要问?因为一切都取决于系统内存。这三个选项将如何一起工作?我能一起做这些事吗?
发布于 2012-11-22 16:54:45
查询缓存可以与内存存储相结合,但只有在没有很多更新的情况下才有意义(因为在更改数据之后,缓存的结果将不再是实际的)。
基本上,查询缓存存储选择查询的结果(如果再次运行,数据被检索得更快)、密钥缓冲区大小存储索引(有助于更有效地使用它们,即更快地检索数据),并且您已经知道内存存储是什么。
您提到的所有三个选项都可以一起使用,但真正的效率取决于您的使用模式。但是,只要您有足够的内存,结合使用就不会有任何害处(我的意思是在使用内存时为缓存和缓冲区分配更大的值)。
你可能认为你自己,你的设置尖叫你使用了一个错误的工具。我可以想象的情况是,它仍然是必要的,例如使用依赖于MySQL的遗留/不可更改代码,但在其他情况下考虑重新设计和使用除MySQL之外的其他数据存储,永久的或临时的,比如memcache。
https://dba.stackexchange.com/questions/29144
复制相似问题