
第一步:打开数据库
- DB Browser for SQLite 打开
blog.db。
第二步:记录压缩前数据库大小
- 点 "执行 SQL" 选项卡,执行:
查询数据库当前大小(字节)。
SELECT (SELECT page_count FROM pragma_page_count()) * (SELECT page_size FROM pragma_page_size()) AS db_size_bytes;
记录当前数据库大小数值。
第三步:执行维护
- 工具 → 完全性检查 结果显示
ok继续,否则数据库有问题。 - 工具 → 优化
- 工具 → 压缩数据库 选
main,点 OK。
第四步:记录压缩后数据库大小
- 再次执行:
查询数据库当前大小(字节)。
SELECT (SELECT page_count FROM pragma_page_count()) * (SELECT page_size FROM pragma_page_size()) AS db_size_bytes;
和之前数据库数值对比,查看压缩效果。
第五步:导出备份
文件 → 导出 → 数据库到 SQL 文件,文件名建议带日期,例如 blog.sql。
blog.db 是二进制格式,SQLite 的原始数据库文件,直接被程序使用。
blog.sql 是纯文本格式,里面全是 SQL 语句,例如 CREATE TABLE、INSERT INTO 等,用文本编辑器就能打开查看。
各自的用途:
blog.db 直接复制一份就是备份,恢复时直接替换文件即可,简单快捷。
blog.sql 是通用格式,可以导入到任何 SQLite 数据库,也方便查看数据内容,适合做归档备份或迁移。
建议两种都保留:
- 平时备份直接复制
blog.db,恢复最方便。 - 重要节点(比如升级前)额外导出一份
blog.sql,作为长期归档。
添加新记录后:
- 写入更改 = 常规保存
- 执行查询和工具菜单里的维护操作(完全性检查、优化、压缩数据库),这些操作压缩数据库时已经自动提交。
工具菜单:
| 功能 | 解释 |
|---|---|
| 压缩数据库(D) | 写入磁盘 修改文件结构 |
| 优化(0) | 写入文件 更新统计信息表 |
| 完全性检查(I) | 不修改文件 只读操作 |
| 快速完全性检查(Q) | 不修改文件 只读操作 |
| 外键检查(F) | 不修改文件 只是界面显示 |
| 显示行数(R) | 不修改文件 只是界面显示 |
执行频率建议:
- 平时:不需要维护
- 删除了大量文章、评论、附件后:执行一次
- 重要操作前(升级、改代码):先备份