如何缩小sqlite数据库?

一旦将所有数据存储到sqlite中,它已经达到14 MB。因此,我担心有些人无法从连接速度较慢的区域下载我的应用程序。有什么办法可以缩小sqlite数据库

回答:

您尝试过VACUUM吗?

VACUUM命令重建整个数据库。应用程序可能会这样做的原因有几个:

  • 除非SQLite在“ auto_vacuum =

    FULL”模式下运行,否则从数据库文件中删除大量数据时,它将留下空白空间或“可用”数据库页面。这意味着数据库文件可能大于严格所需的文件。运行VACUUM重建数据库可回收此空间并减小数据库文件的大小。

  • 频繁的插入,更新和删除会导致数据库文件碎片化-

    单个表或索引的数据分散在数据库文件周围。运行VACUUM可确保每个表和索引在数据库文件中大部分连续存储。在某些情况下,VACUUM还可以减少数据库中部分填充的页面数,从而进一步减小数据库文件的大小…

VACUUM命令的工作方式是将数据库的内容复制到一个临时数据库文件中,然后用该临时文件的内容覆盖原始文件。覆盖原始文件时,将使用回滚日志或预写日志

WAL文件,就像处理任何其他数据库事务一样。这意味着在对数据库进行VACUUM时,可用磁盘空间需要的大小是原始数据库文件的两倍…

以上是 如何缩小sqlite数据库? 的全部内容, 来源链接: utcz.com/qa/420295.html

回到顶部