2010-11-30 76 views
9

我使用sqlite作爲臨時存儲來計算有關中等大型數據集的統計信息。 我想知道如果我的數據庫在32位系統上超過2GB會發生什麼。 (我目前無法將系統更改爲64位)32位系統上SQLite的文件大小限制

它是否使用內存映射文件並在文件大小超過可尋址內存時中斷? (如mongodb)

+0

可能重複的[是否有限制的大小的sqlite數據庫嗎?](http:// stackoverflow .com/questions/2777954/is-there-a-limit-to-the-size-of-sqlite-database) – nawfal 2013-06-12 08:49:01

回答

9

根據sqlite文檔,數據庫文件的最大大小是〜140兆兆字節,並且實際上受到os /文件系統的限制。

你可以在這裏閱讀更多(注意部分):http://www.sqlite.org/fileformat2.html

+0

謝謝。我已經在谷歌搜索結果中省略了那個頁面,因爲我沒有期望在文件格式中找到這樣的信息。 – 2010-11-30 14:44:23

0

找出你的文件系統類型的分區。請記住,文件大小限制它與OS 32位或64位無關,但與硬盤的分區類型無關。

See Wikipedia

0

儘管這是一個老問題,但讓我分享我的發現爲人們誰達到了這個問題。

儘管Sqlite文檔聲明數據庫文件的最大大小是〜140 TB,但是您的操作系統強制它自己限制任何類型文件的最大文件大小。

例如,如果您在Windows上使用FAT32磁盤,則我可以爲sqLite實現的最大文件大小爲2GB。 (據微軟的網站,限制上FAT 32系統4GB但還是我的SQLite數據庫大小限制爲2GB )。在Linux上,我能夠達到3 GB(我停下來,它可能已經達到更多的尺寸)