我查遍了 MySQL 网站,没有找到明确的答案。
根据MySQL手册:
E.10.3。表格大小的限制
MySQL 数据库的有效最大表大小通常由操作系统对文件大小的限制决定,而不是由 MySQL 内部限制决定。下表列出了操作系统文件大小限制的一些示例。这只是一个粗略的指南,并不具有确定性。有关最新信息,请务必查看特定于您的操作系统的文档。
操作系统 文件大小限制 Win32 带 FAT/FAT32 2GB/4GB Win32/NTFS 2TB(可能更大) Linux 2.2-英特尔 32 位 2GB(LFS:4GB) Linux 2.4+(使用ext3文件系统) 4TB Solaris 9/10 16TB 带有 HFS+ 的 MacOS X 2TB Windows 用户请注意,FAT 和 VFAT (FAT32) 不适合用于 MySQL 的生产使用。请改用 NTFS。
在Linux 2.2上,您可以通过使用ext2文件系统的大文件支持(LFS)补丁来获得大小大于2GB的MyISAM表。当前大多数 Linux 发行版都基于内核 2.4 或更高版本,并包含所有必需的 LFS 补丁。在 Linux 2.4 上,还存在 ReiserFS 补丁以获得对大文件(高达 2TB)的支持。借助 JFS 和 XFS,在 Linux 上可以实现 PB 级和更大的文件。
对于你问题的另一部分,我有几点想法:
在当今的硬件和操作系统下,再加上MySQL首选的InnoDB引擎,表的大小限制为64TB。 使用
PARTITIONing
,可以扩展到一百多个 PB。
数据库是表的集合。 因此,要从字面上回答标题问题,我们需要超越最大表大小。 由于数据库中可能有数千个表,因此我们现在已进入 EB 级。
另请参阅 MySQL 中的硬限制 .
默认 mysql 的 myd 文件大小为 256 TB,指针大小为 6 字节。我知道这个答案很荒谬,但这就是你想知道的。在现实生活中,一切都取决于查询、索引、列数、行数等。我猜。