我查看了整个MySQL网站,发现没有确切的答案。
答案 0 :(得分:28)
根据MySQL Manual:
E.10.3。表格大小的限制
MySQL数据库的有效最大表大小通常取决于操作系统对文件大小的约束,而不是MySQL内部限制。下表列出了操作系统文件大小限制的一些示例。这只是一个粗略的指南,并不是明确的。有关最新信息,请务必查看特定于您的操作系统的文档。
Operating System File-size Limit
Win32 w/ FAT/FAT32 2GB/4GB
Win32 w/ NTFS 2TB (possibly larger)
Linux 2.2-Intel 32-bit 2GB (LFS: 4GB)
Linux 2.4+ (using ext3 file system) 4TB
Solaris 9/10 16TB
MacOS X w/ HFS+ 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级和更大的文件。
关于你问题的其他部分,请注意几点:
答案 1 :(得分:3)
1-关于数据库大小,限制取决于操作系统文件大小。请看这article
2- MySQL数据库的有效最大表大小通常由操作系统对文件大小的约束决定,而不是由MySQL内部限制决定。 (Source)
3-你可以google for MySQL vs SQL Server Vs Oracle,也可以查看link
答案 2 :(得分:1)
对于具有6字节指针大小的myd文件,默认mysql为256 TB。我知道这是荒谬的答案,但这就是你想知道的。在现实生活中,所有这些都取决于查询,索引,列数,行数等。我猜。
答案 3 :(得分:1)
使用今天的硬件和操作系统,以及MySQL首选的Engine InnoDB,表大小限制为64TB。使用PARTITIONing
,可以扩展到超过一百PB。
数据库是表的集合。因此,要从字面上回答标题问题,我们需要超越最大表格大小。由于数据库中可能有数千个表,因此我们现在进入了exabyte平流层。