我使用sqlite作为临时存储来计算有关中等大小数据集的统计信息。 我想知道如果我的数据库在32位系统上超过2GB会发生什么。 (我目前无法将系统更改为64位)
是否使用内存映射文件并在文件大小超过可寻址内存时中断? (像mongodb)
答案 0 :(得分:9)
根据sqlite文档,数据库文件的最大大小约为140 TB,实际上受操作系统/文件系统的限制。
您可以在此处阅读更多内容(请注意 页面 部分):http://www.sqlite.org/fileformat2.html
答案 1 :(得分:0)
找出分区的文件系统类型。请记住,文件大小限制它不依赖于操作系统32位或64位,而是使用硬盘的分区类型。
答案 2 :(得分:0)
虽然这是一个老问题,但让我分享我的发现给那些提出这个问题的人。
尽管Sqlite文档指出数据库文件的最大大小约为140 TB,但您的操作系统对任何类型的文件都有自己的最大文件大小限制。
例如如果您在Windows上使用FAT32磁盘,我可以为sqLite实现的最大文件大小 2GB。 (根据微软网站, FAT 32 系统的限制是 4GB ,但我的sqlite数据库大小仍被限制为 2GB 。 在Linux上,我能够达到3 GB(我停在哪里。它可以达到更大的尺寸)