sqlite3 journal

sqlite3默认会开启journal,为了进行rollback。但是在突然断电的情况下,journal文件很容易就损坏了。

目前还没有发现数据库文件本身被损坏的情况。

一旦journal文件损坏,就没法打开数据库文件了。但是可以把journal机制关闭。

一旦journal文件损坏,还会造成文件系统损坏,journal文件都无法删除掉。

对journal文件所在目录进行ls的时候,会显示如下信息:

ls: ./数据库名字-journal : Input/Output error


出现这种情况,只能使用e2fsck命令进行修复了,命令如下:

先umount 分区

e2fsck  -y  /dev/设备文件


使用sqlite3_exec执行"PRAGMA journal_mode = OFF;"即可关闭journal文件


关闭journal文件后就不能使用事务机制了,否则,操作会报错。

cannot commit - no transaction is active

所以如果要关闭journal,最好将关闭journal的操作放到所以操作之前,也就是打开数据库之后立即关闭。


经测试,发现关闭journal后,突然断电,数据库文件总是消失,不知道为什么。最后找到一个办法,

在打开数据库后,立即执行,system("sync"),就没问题了。



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/432809.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 计划任务 实例,计划任务 cron 的配置和实例

1、计划任务概说;计划任务,是任务在约定的时间执行已经计划好的工作,这是表面的意思。在Linux中,我们经常用到 crond服务器来完成这项工作。cron服务器可以根据配置文件约定的时间来执行特定的作务。比如我们可以在配置文件中约定…

产品经理们都是怎样成为产品经理的?

一百多个回答中发现很多人的答案讲得是做产品经理之前大家是做什么的或者产品经理是做什么的,这样又造成恶性循环让更多的人这样回答,不过问题本身的描述就有误导性,不怪回答者。我想问问题的人其实是想知道或者说想让别人知道,在…

QString与中文问题

QString 与中文问题2010-07-11 17:04(更新:本文的姊妹篇 Qt中translate、tr关系 与中文问题 )首先呢,声明一下,QString 是不存在中文支持问题的,很多人遇到问题,并不是本身 QString 的问题,而是没有将自己希…

在SharePoint 2010中创建网站的权限级别

转:http://www.360sps.com/Item/CreatePermissionLevels.aspx 权限级别是SharePoint 2010新增加的功能,使我们对权限的设置又提高了一个层次。SharePoint 2010的权限级别指的是可分配给用户或用户组的单个权限组。SharePoint 2010自带的权限级别有&#…

Qt 编码问题QTextCodec

一般在Window开发环境里,是GBK编码,在Linux开发环境里,是utf-8编码,关于编码的定义, 我就不这里多说了,网上有一大堆资料可以查看。 qt对默认的是unicode编码,在Window开发环境里,比…

linux suse11 nfs,suse11 nfsserver服务安装

1概述目的:因为suse11的nfs服务安装和suse10安装有许多不同之处,为了方便以后使用suse11的人使用nfs服务,特写此文档2安装说明A suse11默认不会nfsserver服务,需要安装nfs-kernel-server此包。suse10默认安装nfssever服务&#…

Merge Two Sorted Lists

Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists. if... else if不要偷懒直接写 if...if... /*** Definition for singly-linked list.* struct ListNode {* int val;* …

V210 系统时间设置

date -s "2015-08-30 20:46:30" hwclock -w

Linux中重定向及管道,Linux中重定向及管道

1重定向1.1 重定向符号> 输出重定向到一个文件或设备 覆盖原来的文件>! 输出重定向到一个文件或设备 强制覆盖原来的文件>> 输出重定向到一个文件或设备 追加原来的文件1.2标准错误重定向符号2> 将一个…

仿新浪微盾客户端项目简介一

最经公司的项目需要实现类似于新浪微盾功能的功能,因此我把这个实战的demo的经历分享给大家。 新浪微盾是啥子玩意? 微盾是由新浪网推出的一款产生一次性动态密码的产品,可以用于新浪旗下各服务,包括新浪微博,新付通&a…

linux设置时间为24小时制,设置时区

1. 查看系统时间 [rootlocalhost.localdomain ~]#date Thu Feb 4 14:24:18 CST 2010 时区是CST,为了彻底弄明白GMT,UTC,CST,我查阅了下网上的相关教程,进行整理: 一般来说,UTC(Coordinated Universal Time世界协调时间…

linux读取pdf文件字体,Linux有问必答:如何在PDF中嵌入LaTex中的所有字体

提问: 我通过编译LaTex源文件生成了一份PDF文档。然而,我注意到,并不是所有字体都嵌入到了PDF文档中。我怎样才能确保所有的字体嵌入在由LaTex生成的PDF文档中?当你创建一个PDF文件时,在PDF文件中嵌入字体是一个好主意。如果你不嵌…

详解公钥、私钥、数字证书的概念

加密和认证   首先我们需要区分加密和认证这两个基本概念。    加密是将数据资料加密,使得非法用户即使取得加密过的资料,也无法获取正确的资料内容,所以数据加密可以保护数据,防止监听攻击。其重点在于数据的安全性。身份认证…

CSS3 2D转换

CSS3 转换 通过CSS3转换,我们能够对元素进行移动、缩放、转动、拉长或拉伸。 它如何工作? 转换是是元素改变形状、尺寸和位置的一种效果。 你可以使用2D或3D转换你的元素。 浏览器支持 属性浏览器支持transform IE10、FireFox以及Opera支持transform…

linux blender骨骼绑定,Linux下安装Blender

Blender在Windows下,可以在官方直接下载免安装的版本,下载解压缩就能用。在Linux下稍微麻烦一点点。如下3步安装的blender不一定是最新版本,且安装完成后发现设置中文会变为方块。这是精简版,中文被精简掉了。若仅使用英文环境&am…

如何删除过期的数据库备份文件呢? .

通过 Forfiles 删除指定目录下过期的备份文件 /*-- 用法详解 D:/>forfiles /? FORFILES [/P pathname] [/M searchmask] [/S] [/C command] [/D [ | -] {yyyy-MM-dd | dd}] 描述 : 选择一个文件 ( 或一组文件 ) 并在那个文件上 执行一个命令。这有助于批处理作业。 参数列表…

ssh防止连接掉线

TCPKeepAliveyes ServerAliveInterval15 ServerAliveCountMax6 有些时候隧道会因为一些原因通信不畅而卡死,例如:由于传输数据量太大,被路由器带入stalled状态。这种时候,往往SSH客户端并不退出,而是卡死在那里。…

c程序设计语言 练习1-6,C程序设计语言:第一章练习

练习1-1 在你自己的系统中运行”hello,world“程序。再有意去掉部分内容,会看到什么出错信息。练习1-2 做个实验,当printf函数的参数字符串中包含\c(其中c是上面的转义字符序列中未曾列出的某一个字符)时,观察一下啊情况。warni…

然爸读书笔记(2014-5)----团队正能量

先说下题外话,今天下午吃烤肉,吃了2个小时,我擦啊,时间真心挺长,上面的图就是咯,你们嘴馋不咯。嘿嘿! 今天真的是快速阅读了一本书,很早以前买的,一直没时间来看。刚看了…

ssh密钥代理转发(ssh agent forwarding)

之前一直用SecureCRT登陆服务器A然后再跳到服务器B,某日突然需要从另一台可信任的机器C用ssh登陆,ssh的key已经复制好,所以登陆A没有问题,但是登陆B会出现Pubkey Unauthorization.仔细翻查SecureCRT的设置,发现有密钥代…