首页 > 达思技术 > 技术文章
LINUX下误删除Oracle数据库数据恢复方案
来源:达思数据恢复覃总    阅读:3563    发布时间:2014/9/30 14:44:25

       在LINUX下的Ext3/Ext4文件系统下,如果误删除了数据,数据恢复难度很大。如果说删除的文件数量不大(一般在几百个文件以内),还能够通过.journal日志文件对比残留的inode信息进行恢复,恢复出来的数据目录结构不一定能保留完整;如果删除文件数量很大,数据恢复几乎不能完整保留文件目录结构。这是Ext3/Ext4文件系统的通病,不给误删除留后路!在数据恢复业案例中,有不少例子是LINUX下误删除了ORACLE数据库文件,下面介绍下Linux下删除Oracle数据库的数据恢复技术方案。


      数据丢失案例背景:


       计算机维护工程师停掉oracle服务,打算把oracle做一个冷备份,把库文件备份到windows PC Server上,用CuteFTP客户端下载。在下载过程中,发现下载速度特别慢,想删除下载任务,结果误操作,把要下载的oracle实例文件夹整个都删除了, oracle库文件、控制文件、日志文件全部删除了。

 

      LINUX下EXT3文件系统恢复技术介绍:


       EXT3文件系统没有预留反删除的功能。在EXT3文件系统中,每个文件都是通过Inode来描述其数据存放的具体位置,当删除文件以后,Inode的数据指针部分被清零,文件目录区没有太多变化。文件的读写都是通过Inode来实现,当Inode数据指针被清零以后,即便文件内容还在,我们也没有办法把文件内容组合出来。


      EXT3文件系统是一种带日志功能的文件系统,Inode的变化会在日志文件.journal中有记录,.journal文件比较小,一般是32MB。当EXT3文件系统中的metadata数据发生变化时,相应的metadata在.journal文件会有一份COPY。比如一个文件被删除了,它的Inode信息会在.journal文件中先保存一份,然后把要删除文件inode相关信息清零。这个.journal文件是循环使用的,当操作过多时,删除的文件的inode日志记录会被新的数据替换,这就彻底丧失了根据inode找回数据的机会了。如果是大量文件的删除,这个.journal文件会被反复循环利用多次,只留给最后删除的那些文件的恢复机会。

 

      数据恢复技术方案:


      客户要恢复的是oracle数据库,oracle数据库文件被删除以后,只要是数据内容没有被覆盖,达思数据恢复技术可以把文件单独提取出来。经过深入分析,在.journal文件没有找到删除过的oracle数据文件,原因是用户删除数据以后,系统还在开机运行,同时尝试启动过oracle实例,oracle产生一些日志文件,这些日志文件数量比较多,而要恢复的删除过的文件数量只有16个,在.journal文件中已经没有了删除文件的inode信息。


      恢复的思路有两条:


      第一种:根据oracle数据文件内部结构,对全盘进行搜索,符合oracle数据页面的数据都提取出来,然后按照oracle数据文件的ID号进行重新组合。


      第二种:根据oracle数据文件分布规律,精确定位oracle文件的数据指针地址,包括一级间接地址、二级间接地址和三级间接地址,重新构造出该文件的inode信息,然后把数据读取出来。

 

      通过这两种恢复出来的数据效果都很好,最后oracle能正常启动。工程师把数据全部备份出来,最后发现有两个表数据少了一些记录,经查明,原因就是删除文件以后,一些日志文件的写入该分区,破坏了oracle数据文件的一些数据页面,幸好这两张表数据对用户来说不是很重要。

 

     达思数据安全提醒:


      在LINUX/UINX下误删除了文件,当发现数据丢失以后,最好不要进行任何操作,马上关机,保留现场。如果条件不允许关机,就要想办法把数据丢失的文件系统经过DD镜像到另外的存储空间上作为最原始的备份。 转载请注明出处




分享到:
达思公司联系方式
    • 达思北京数据恢复中心(全国总部)

    • 数据恢复服务咨询:400-700-0017

    • 数据恢复培训咨询:010-62672127

    • 达思数据恢复软件:010-62670586

    • 达思软件技术支持:010-62670165


    • 达思总部

    • 数据恢复实验室:  010-62672127

    • 数据恢复实训室:  010-62672381

    • 电子取证实验室:  13522681842

    • 软件销售QQ:  151208

    • 远程协助QQ:  12869803

    • 邮件联系:sos@dstchina.cn

    • 邮件支持:support@dstchina.cn

    • 24小时免费电话:400-700-0017

    • 24小时监督电话:13671390603

网站首页 | 北京数据恢复 | 数据恢复公司 | 硬盘数据恢复 | 服务器数据恢复 | raid数据恢复 | 数据库数据恢复 | 达思科技官网

Copyright2007-2024 达思凯瑞技术(北京)有限公司 抖音搜“北京达思数据恢复店”
达思数据恢复软件技术QQ群:120161291
北京服务器数据恢复中心:中国北京市朝阳区北苑东路19号院中国铁建广场D座2204室
电话:010-62672120,400-700-0017 18600668588(微信同号)
ICP备案号:京ICP备09028603号-49
ICP备案号: - 技术支持:千助科技

用QQ扫一扫

加入达思QQ群