MySQL 3.22 在表大小上有一个4G的限制。使用在MySQL 3.23中的新MyISAM 最大的表大小可达8百万 TB(2^63个字节)。 然而注意,操作系统有其自身文件大小的限制。在Linux上,当前的限制是2G;在Solaris 2.5.1上,限制是4G;在Solaris 2.6上,限制是1000G。这意味着MySQL表的大小通常由操作系统限制。 缺省地,MySQL表最大尺寸大约4G。你可用SHOW TABLE STATUS命令或myisamchk -dv table_name检查一个表的最大表大小。见7.21 SHOW句法(得到表、列等的信息)。如果你需要大于 4G 的表(并且你的操作系统支持它),你应该在你创建表时设定AVG_ROW_LENGTH和MAX_ROWS参数。见7.7 CREATE TABLE语法。你也能用ALTER TABLE在以后设置这些。见7.8 ALTER TABLE语法。 如果你的大表要变成只读,你可以使用myisampack合并并且把许多表压缩成一个。myisampack通常压缩一个表到至少50%,因此你可以有,实际上,更大的表。见12.5 MySQL压缩的只读的表生成器。 另一个的解决方案可以是内含包括MERGE库,它允许你将一个许多相同的表的集合作为一个来处理。(在这种情况下相同意味着所有的表由相同的列信息创建)目前MERGE只能用于扫描一个表集合,因为它不支持索引。我们在不久的将来将把索引加进去。