我查看了整个 MySQL 网站,但没有找到明确的答案。
- 数据库的大小是由操作系统决定的还是有 4GB 的限制?
- 我在哪里可以找到针对其他数据库(sqlServer、oracle 等)的性能统计信息
我查看了整个 MySQL 网站,但没有找到明确的答案。
根据MySQL 手册:
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,PB 和更大的文件在 Linux 上是可能的。
至于你问题的另一部分,有几点想法:
使用今天的硬件和操作系统,再加上 MySQL 首选的 Engine InnoDB,表大小限制为 64TB。使用PARTITIONing
, 可以扩展到超过 100 PB。
数据库是表的集合。因此,要从字面上回答标题问题,我们需要超出最大表格大小。由于数据库中可能有数千个表,我们现在进入了艾字节的平流层。
另请参阅MySQL 中的硬限制。
对于具有 6 字节指针大小的 myd 文件,默认 mysql 为 256 TB。我知道这是荒谬的答案,但这就是您想知道的。在现实生活中,一切都取决于查询、索引、列数、行数等。我猜。