MySQL个人表缓存

时间:2011-10-20 19:40:17

标签: mysql caching

我正在使用一堆简单的SELECT查询来访问一个相当静态的表 为了提高性能,我正在考虑为这些数据编写自己的内存缓存
但这感觉就像做了DB的肮脏行为。

是否存在特定表的粒度缓存机制?

3 个答案:

答案 0 :(得分:5)

如果你使用InnoDB,MySQL会自动为你缓存表,并为常用的索引部分创建哈希索引。
我建议你增加MySQL可以使用的内存量,它应该自己解决你的问题 默认情况下,MySQL设置为节省空间,而不是快速运行。

以下是一些可以帮助您进行调整的链接:

http://www.debianhelp.co.uk/mysqlperformance.htm
http://www.mysqlperformanceblog.com/2006/09/29/what-to-tune-in-mysql-server-after-installation/

还可以使用索引并编写更智能的查询 但如果您没有向我们展示查询,我无法帮助您。

答案 1 :(得分:0)

有一个内存数据库(如innodb)。您可以在创建表时选择它。

答案 2 :(得分:0)

您可以尝试将静态ISAM表复制到临时表中,该表根据定义为ram-resident。 OTOH,我觉得这个表已经被缓存了,所以这可能没多大帮助。如何向我们展示您的查询?