当前位置: 首页 > news >正文

SQLite数据库修复教程

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

SQLite 大家都知道,就不多说了。

有时候数据量大了,或者存储过程中出现异常,数据库就可能会出问题。

这是以前公司产品出现过的问题,导致软件都打不开了,我花了不少时间才解决的,趁现在有空贡献出来。


  1. 先下载一个 sqlite3 的命令行工具,下载对应系统版本的  command-line shell

  2. 下载完成后解压到一个目录下,顺便把要修复的数据库也放到该目录下。

  3. 打开终端(CMD)进入到该目录。

  4. 执行以下命令:
    
    sqlite3 要修复的数据库名
    .output "_temp.tmp"
    .dump
    .quit
    
    该命令是将旧数据库的内容提取出来,保存到一个临时文件中。
  5. 用编辑器打开刚刚生成临时文件 _temp.tmp 看看文件的最后一行是不是
    
    ROLLBACK; -- due to errors
    
    是则把它删掉,并加上
    
    COMMIT;
    
    如果最后一行是 COMMIT; 则忽略此步骤。
  6. 再到终端,输入一下命令:
    
    sqlite3 新数据库名
    .read "_temp.tmp"
    .quit
    
    此命令是将旧数据写到新数据库里面。

  7. 至此,数据库修复完毕。可能有点小缺陷,数据会丢失一小部分,不过至少大部分数据都还在,数据库也能继续使用了。

转载于:https://my.oschina.net/ZntxCYL/blog/535306

相关文章:

  • swift基础之_对象 实例方法 对象方法。
  • http之缓存的实现原理
  • 编译Busybox时,出现错误fatal error: curses.h: No such file or directory
  • Oracle学习笔记十一 游标
  • 读函数式编程思维
  • IE中用JS让页面全屏的方式(达到F11的 效果)
  • 利用DataURL技术在网页上显示图片
  • iOS音频AAC视频H264编码 推流最佳方案
  • 【十大经典数据挖掘算法】C4.5
  • logstash推送mysql慢查询日志
  • 51cto博客第一篇
  • c语言:将三个数按从大到小输出。
  • 正则与JS中的正则
  • JAVA实现发送电子邮件
  • JS组件系列——表格组件神器:bootstrap table
  • 2017年终总结、随想
  • C++类中的特殊成员函数
  • eclipse(luna)创建web工程
  • ERLANG 网工修炼笔记 ---- UDP
  • ES6之路之模块详解
  • HTTP那些事
  • JAVA 学习IO流
  • Python_OOP
  • Vue 动态创建 component
  • Webpack入门之遇到的那些坑,系列示例Demo
  • 闭包--闭包之tab栏切换(四)
  • 产品三维模型在线预览
  • 官方解决所有 npm 全局安装权限问题
  • 理解在java “”i=i++;”所发生的事情
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 说说动画卡顿的解决方案
  • 微信开源mars源码分析1—上层samples分析
  • 一道面试题引发的“血案”
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • 正则表达式-基础知识Review
  • ​3ds Max插件CG MAGIC图形板块为您提升线条效率!
  • #设计模式#4.6 Flyweight(享元) 对象结构型模式
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (二)c52学习之旅-简单了解单片机
  • (附源码)springboot建达集团公司平台 毕业设计 141538
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (剑指Offer)面试题41:和为s的连续正数序列
  • (转) ns2/nam与nam实现相关的文件
  • .bat批处理(四):路径相关%cd%和%~dp0的区别
  • .NET 5.0正式发布,有什么功能特性(翻译)
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .net core 控制台应用程序读取配置文件app.config
  • .NET Framework 和 .NET Core 在默认情况下垃圾回收(GC)机制的不同(局部变量部分)
  • .NET Micro Framework初体验
  • .net/c# memcached 获取所有缓存键(keys)
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • .NET成年了,然后呢?
  • .net通用权限框架B/S (三)--MODEL层(2)
  • /deep/和 >>>以及 ::v-deep 三者的区别