摘要: MySQL数据打捞工具 0.1 windows版 下载 一,选择数据源与输出目录 数据源可以是分区或物理物理磁盘,如\\.\D: 或\\.\PhysicalDrive0; 二,参数设置 请设置扫描参数 三,开始一次扫描 一次扫描可以扫描出正常的完整页面,和不完整的页面; 四,开始二次扫描 二次扫描可 阅读全文
posted @ 2016-05-16 14:38 比特猫 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 一,主函数功能: 1,分析命令行参数,保存在全局变量中; 2,打开文件,加载表定义sql,调用分析函数开始处理; 3,打印导入数据的sql语句; 二,文件处理函数,void process_ibfile(int fn): 1循环读每一页面,调用分析页面函数去去处理,process_ibpage(pa 阅读全文
posted @ 2016-05-10 08:46 比特猫 阅读(612) 评论(0) 推荐(0) 编辑
摘要: 一,用winhex把正常页有意做成不连续的两部分,把后8K向后移动4K,中间隔开4K,启动第一次扫描; 扫描结果是,没有提取到有效页面,但在输出目录生成两个文件:upper.pages和upper.list,这两个文件是第二次扫描下半页是要用的; 二次扫描需要数据源文件,和上一步的upper.lis 阅读全文
posted @ 2016-05-09 15:57 比特猫 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 操作系统簇大小一般是4K,而innoDB的页大小一般是16K,那么就有可能16K的页没有存储在连续的簇中,这样扫描软件就不会扫描出来这样的页面.为了解决这个问题,决定给软件增加半页扫描功能. 在第一次扫描的时候把所有页头部特征正确,但尾部特征不正确的页保存在单独的文件中,并生成一个非完整页信息列表文 阅读全文
posted @ 2016-05-06 08:06 比特猫 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 有了页面的结构和特征,需要编程实现数据库页面的打捞工作; 为了方便windows and linux 的通用,计划做成C语言的控制台应用,并且尽量只用ansi c;关于多线程,计划做成多线程的程序,最好是一个线程读文件,一个线程计算与输出;关于线程库:选择pthead,多线程正是个头疼的事儿呀,un 阅读全文
posted @ 2016-05-05 22:57 比特猫 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 如果文件系统损坏或意外删除了数据库文件,只要磁盘空间没有被覆盖,其实数据都还在磁盘的扇区中,还是可以恢复出来的,有些通用的文件恢复工具好象也可以恢复文件 ,但这里要研究的是在通用文件 恢复工具失效的时候。 innodb文件是按页保存的,这为打捞工作提供了非常有利的条件,页面具有一些特征,我们可以根据 阅读全文
posted @ 2016-05-02 16:14 比特猫 阅读(484) 评论(0) 推荐(0) 编辑
摘要: 感觉博客园的风格还不错,速度比自己的主机还好, 以前也使用过别的博客,都没有好好坚持下来,希望计划好好利用一下博客园. 以此做为博客园的第一篇文章. 阅读全文
posted @ 2016-05-02 15:03 比特猫 阅读(139) 评论(0) 推荐(1) 编辑