MySQL 3.22限制的表大小為4GB。由於在MySQL 3.23中使用了MyISAM存儲引擎,最大表尺寸增加到了65536TB(2567 – 1字節)。由於允許的表尺寸更大,MySQL數據庫的最大有效表尺寸通常是由操作系統對文件大小的限制決定的,而不是由MySQL內部限制決定的。
InnoDB存儲引擎將InnoDB表保存在一個表空間內,該表空間可由數個文件創建。這樣,表的大小就能超過單獨文件的最大容量。表空間可包括原始磁盤分區,從而使得很大的表成為可能。表空間的最大容量為64TB。
在下面的表格中,列出了一些關於操作系統文件大小限制的示例。這僅是初步指南,並不是最終的。要想了解最新信息,請參閱關於操作系統的文檔。
| 操作系統 |
文件大小限制 |
| Linux 2.2-Intel 32-bit |
2GB (LFS: 4GB) |
| Linux 2.4+ |
(using ext3 filesystem) 4TB |
| Solaris 9/10 |
16TB |
| NetWare w/NSS filesystem |
8TB |
| win32 w/ FAT/FAT32 |
2GB/4GB |
| win32 w/ NTFS |
2TB(可能更大) |
| MacOS X w/ HFS+ |
2TB |
在Linux 2.2平台下,通過使用對ext2文件系統的大文件支持(LFS)補丁,可以獲得超過2GB的MyISAM表。在Linux 2.4平台下,存在針對ReiserFS的補丁,可支持大文件(高達2TB)。目前發布的大多數Linux版本均基於2.4內核,包含所有所需的LFS補丁。使用JFS和XFS,petabyte(千兆兆)和更大的文件也能在Linux上實現。然而,最大可用的文件容量仍取決於多項因素,其中之一就是用於存儲MySQL表的文件系統。
