终极恢复孰弱孰强-DUL vs AUL

作者:eygle  原文链接: http://www.eygle.com/archives/2007/02/dul_vs_aul.html


这几天在帮朋友作数据恢复,由于已经到了无可救药的地步,只能使用终极手段进行恢复,直接从文件中读取数据进行恢复。

在恢复过程中反复对比了DULdcba的AUL,感觉到了两者的不同。

DUL在处理文件损坏的情况下,如文件部分缺失、数据块损坏的恢复明显要弱于AUL,AUL经过几次修正之后已经能够很好的处理这些情况。 DUL无法跳过文件的损坏部分(也许是我不知道),在扫描文件时大量的错误信息让人崩溃;而AUL可以很容易的安静地处理这些损坏。

在处理LOB对象时,我做过测试AUL在存在SYSTEM的情况下,能够非常完美的恢复图片对象:

D:/oradata/EYGLE/DATAFILE>aul4b.exe Register Code: 25FV-NFCH-B53H-RO9V-SZHV AUL : AnySQL UnLoader(MyDUL) for Oracle 8/8i/9i/10g, release 4.0.1 (C) Copyright Lou Fangxin 2005-2006 (AnySQL.net), all rights reserved. AUL> open crl.txt * ts# fno rfn ver bsize blocks filename - ---- ---- ---- --- ----- ---------- ----------------------------------- Y 4 4 4 a2 8192 640 O1_MF_USERS_2G8OJYYS_.DBF AUL> scan extents 2007-02-02 10:52:09 2007-02-02 10:52:09 AUL> scan table to table.txt 2007-02-02 10:52:29 2007-02-02 10:52:29 AUL> list table eygle; UNLOAD TABLE eygle.EYGLE TO EYGLE.txt; UNLOAD TABLE eygle.EYGLE_BLOB TO EYGLE_BLOB.txt; AUL> UNLOAD TABLE eygle.EYGLE_BLOB TO EYGLE_BLOB.txt; 2007-02-02 10:58:16 Unload OBJD=14367 FILE=4 BLOCK=19 CLUSTER=0 ... 2007-02-02 10:58:16 AUL>

这个数据卸载或加载之后,与原数据完全相符:

E:/rec/blobtest>sqlldr eygle/eygle control=EYGLE_BLOB_sqlldr.ctl SQL*Loader: Release 10.2.0.1.0 - Production on 星期五 2月 2 11:43:32 2007 Copyright (c) 1982, 2005, Oracle. All rights reserved. SQL*Loader-292: 加载 XML, LOB 或 VARRAY 列时忽略 ROWS 参数 加载完成 - 逻辑记录计数 2。 E:/rec/blobtest>sqlplus "/ as sysdba" SQL*Plus: Release 10.2.0.1.0 - Production on 星期五 2月 2 11:43:41 2007 Copyright (c) 1982, 2005, Oracle. All rights reserved. 连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options SQL> connect eygle/eygle 已连接。 SQL> desc eygle_blob; 名称 是否为空? 类型 ----------------------------------------- -------- ---------------------------- FID NUMBER FNAME VARCHAR2(50) FDESC VARCHAR2(200) FPIC BLOB SQL> select fid,fname,length(fpic) from eygle_blob; FID FNAME LENGTH(FPIC) ---------- -------------------------------------------------- ------------ 1 1.jpg 333769 2 2.jpg 300332 1 1.jpg 333769 2 2.jpg 300332 SQL>

当然,DUL也有很强大的地方,比如转储文件格式等方面要优于AUL。

不过AUL最大的好处在于可以很快地得到技术支持,DCBA最近正在编写完备AUL的手册用于指导用户恢复,而且DCBA修复Bug的速度也是超快的,在这次恢复中他就为我修复了一个Bug,感谢DCBA对我的大力支持。

其实很多时候,到达用户现场后,你就只剩下一个想法,尽快帮用户最大程度的恢复数据,因为到了最后的阶段,数据已经影响到了很多人的生活,我们能做的就是尽最大可能以最快速度进行恢复。

-The End-

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏杨建荣的学习笔记

一次数据库宕机问题的分析(r6笔记第5天)

今天来到办公室,发现有一台服务器中的数据库实例停掉了。这种情况真是意料之外,尤其是我还不是很熟悉这台机器的服务。 赶紧查看数据库日志,可以看到数据库在昨晚停掉了...

50050
来自专栏DannyHoo的专栏

开发后期在各个页面中添加友盟统计

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/...

32420
来自专栏杨建荣的学习笔记

dg broker配置的问题及分析 (r7笔记第22天)

今天在配置一个备库的时候碰到了一些问题,话说配置dg broker真没什么特别需要注意的细节了,本身已经给DBA省了很大的事儿了。 但是有时候就是会出现一些稀奇...

40040
来自专栏逸鹏说道

SQL Server 数据库清除日志的方法

SQLSERVER的数据库日志占用很大的空间,下面提供三种方法用于清除无用的数据库日志文件 方法一: 1、打开查询分析器,输入命令 BACKUP LOG d...

45650
来自专栏www.96php.cn

phpStudy升级mysql版本为mysql-5.7.17

phpStudy 2016.11.03 版本 下载地址:官方下载地址 ---- Apache+Nginx+LightTPD+IIS php5.2 php5.3...

1.1K70
来自专栏杨建荣的学习笔记

关于查看dba_data_files的一个小问题(r7笔记第72天)

今天帮一个朋友看一个pl/sql的问题,他已经钻到一个死胡同里列,可能明眼人一看就知道哪里有问题,但是当局者迷,所以我抽空看了一下这个pl/sql块。 pl/s...

39250
来自专栏Java学习123

powerdesigner 15 如何导出sql schema

34270
来自专栏乐沙弥的世界

收缩临时表空间

        当排序操作、重建索引等大型操作无法在内存中完成时,临时表空间将为排序提供便利。一般情况下临时表空间为多个用户,多个会话所共 享。不能为会话分...

14530
来自专栏乐沙弥的世界

Oracle 阻塞(blocking blocked)

   阻塞是DBA经常碰到的情形,尤其是不良的应用程序设计的阻塞将导致性能严重下降直至数据库崩溃。对DBA而言,有必要知道如何定位到当前系统有哪些阻塞,到底谁是...

9220
来自专栏解Bug之路

自己动手写SQL查询引擎-总篇

本篇Blog在总体层面介绍了SQL查询引擎Rider的功能及设计,其细节部分将会在后面的篇章中一一道来。

14620

扫码关注云+社区

领取腾讯云代金券