MySQL MyISAM& innoDB内存使用情况

时间:2008-11-04 18:16:03

标签: mysql memory innodb myisam

有谁知道MyISAM和innoDB使用了多少内存?在处理小型表和处理更大的表(最多32 GB)时,它们的内存使用情况如何比较?

我知道innoDB比MyISAM重,但还有多少?

任何帮助都将不胜感激。

谢谢, JB

1 个答案:

答案 0 :(得分:6)

你不能那样比较它们。或者至少,你不应该。每个人都以不同的方式使用内存。如果您正在调整数据库的性能,则尤其如此。

MyISAM具有特定的索引缓冲区,它使用操作系统磁盘缓冲区来缓存其他数据。让缓冲区大于索引总和是没有意义的,但是你给它的内存越多,它就越快。

InnoDB有一个用于所有数据的缓冲池。您可以根据可用内存以及要提供的内存来配置它。 InnoDB将尽可能多的数据缓存在内存中。如果你可以将整个数据库安装在内存中,InnoDB永远不会从磁盘读取。当数据大小大于缓冲池时,许多InnoDB数据库都会看到巨大的性能命中率。

MySQL非常易于配置。它可以满足您的需求。通常,数据库应尽可能多地提供内存,因为它们几乎总是受磁盘限制。更多内存意味着可以缓冲更多内容。