分享

mysql最大容量有多大 - 亿赛网络工作室

 hut51 2010-09-16
[ mysql最大容量有多大 ]

一、数据库设计方案:

一般大容量的数据,有两种设计方案:一是拆分,二是合并。
所谓拆分,是指将数据结构相同的内容,拆分为多张表或多个库。
由于MySQL将一个库中所有的表文件存储在一个目录中,且一个表文件跟随多个附属文件或索引文件,所以,拆分表,会造成库文件夹下文件数目的成倍增加。
当增加到一定程度,MySQL的效率不会下降,但文件管理的效率会明显下降,甚至宕机。
Linux下一个目录中的文件数量以不超过300为宜,这样换算,一个库中的表,不应高于100个左右。

将数据拆分成多个库,可以解决上面的问题,但给链接查询和数据维护增加了极大麻烦。
当要取所有记录时,需要跨库查询,是不实际的。

所谓合并,是指对数据结构一致的大容量数据不进行拆分,放入一个表中,通过索引或其他优化方案来解决查询问题。
MySQL对表中的最大记录数并没有限制,具体看机器性能,不过在100万之内的查询速度,是没有差异的。
在实际应用中,发现MySQL可以适应千万级别的数据表。所以,如果单表数据不会超过千万,是无需进行拆分的,但查询字段的索引一定要建立,可使查询效率提高不少。

二、具体容量范围:

MySQL 3.22限制的表大小为4GB。由于在MySQL 3.23中使用了MyISAM存储引擎,最大表尺寸增加到了65536TB(2567 – 1字节)。由于允许的表尺寸更大,MySQL数据库的最大有效表尺寸通常是由操作系统对文件大小的限制决定的,而不是由MySQL内部限制决定的。

InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建。这样,表的大小就能超过单独文件的最大容量。表空间可包括原始磁盘分区,从而使得很大的表成为可能。表空间的最大容量为64TB。

在下面的表格中,列出了一些关于操作系统文件大小限制的示例。这仅是初步指南,并不是最终的。要想了解最新信息,请参阅关于操作系统的文档


操作系统                            文件大小限制

linux2.2-inter 32-bit                2GB

linux2.4+                            (using ext3 filesystem)4TB

solaris 9/10                         16TB

netware w/NSS filesystem             8TB

win32 FAT/FAT32                      2GB-4GB

WIN32 W/NTFS                         2TB(可能更大)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多