记一次:sqlit3恢复database disk image is malformed

前言:在笔者同事使用sqlit3的时候发生了database disk image is malformed错误,打开后发现db文件库没有问题,但其中一个表提示了这个问题,于是乎就有了这篇文章

步骤一、验证db文件库能不能打开

使用的是navicat验证打开的库,点击其中的一个表提示了错误

步骤二、需要安装sqlite-amalgamation-3460100工具

步骤三、将损坏的db文件放入这个工具文件夹下

步骤四、在此目录下打开cmd命令工具

步骤五、执行命令将损坏的数据库导出为 SQL 文件

sqlite3 "xxx.db" .dump > newsfeed.sql

步骤六、查看导出sql文件

打开导出的sql文件查看损坏的表数据是否已经导出

此时就已经成功了,我们在重新建表或者在导入回去都无所谓了。因为sql语句已经存在了。

步骤七、导入新表

sqlite3 new.db < newsfeed.sql

注意、sql文件中若导出的 SQL 文件最后一行是 ROLLBACK;,请将其修改为 COMMIT;,然后再次导入。

从新打开成功

错误原因分析:

查看官方解释如下

后面若有db库文件损坏或其它错误会再次更新

相关推荐
这个DBA有点耶5 天前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
DBA_G5 天前
从地面到云霄:GBase数据库在民航三大场景的落地实践
数据库
自由能燃气设备5 天前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
科创致远5 天前
科创致远 ESOP 系统核心效能与实战价值展示
大数据·数据库·人工智能·精益工程
漂着的圆木5 天前
Agent 功能参与度:Copilot 怎么算
sql·数据分析·agent·githubcopilot·度量
2601_962218615 天前
万象生鲜系统称重自动多退少补算法解决生鲜非标品痛点
大数据·数据库·人工智能·python·算法
张洛闻Eren5 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
于平安5 天前
MySQL-触发器
数据库·mysql
白远山5 天前
上海24小时自助健身房解决方案实战指南与经验分享
java·数据库·架构·需求分析
Omics Pro5 天前
斯坦福Nature+Science|广义虚拟细胞基础大模型
数据库·人工智能·算法·机器学习·自然语言处理