SQLite 数据库的结束二进制模式

Ending binary pattern of SQLite database

我正在创建一个恢复工具来从二进制转储映像中恢复 SQLite 3 数据库。

起始位模式和字符串很好,看​​起来像这样。

53 51 4c 69 74 65 20 66 6f 72 6d 61 74 20 33 00 <<<< SQLite format 3

如何确定db文件的结尾?

file format documentation所示,没有结束模式。特别是,如果最后一页是释放页或溢出页,它可以有任何随机内容。

假设数据库文件没有损坏,您必须从 database header 或文件系统中推断出它的大小。