IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    oracle dul 11 正式发布

    惜分飞发表于 2016-06-13 15:22:28
    love 0

    联系:手机(13429648788) QQ(107644445)QQ咨询惜分飞

    标题:oracle dul 11 正式发布

    作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]

    千呼万唤oracle dul 11终于发布了,迫不及待的下载来测试,现在版本号为dul 11.2.0.0.1,目前只发布了for linux,其他版本估计要等等.期待该版本有引进新功能
    oracle dul 11发布
    oracle-dul-11


    dul 11 测试恢复oracle 12c版本

    [root@ora1221 dul11]# ./dul
    
    Data UnLoader: 11.2.0.0.1 - Internal Only - on Mon Jun 13 00:04:50 2016
    with 64-bit io functions
    
    Copyright (c) 1994 2016 Bernard van Duijnen All rights reserved.
    
     Strictly Oracle Internal Use Only
    
    
    DUL: Warning: Recreating file "dul.log"
    Found db_id = 1414800805
    Found db_name = ORCL
    
    DUL> bootstrap;
    Probing file = 1, block = 520
    . unloading table                BOOTSTRAP$
    DUL: Warning: block number is non zero but marked deferred trying to process it anyhow
          60 rows unloaded
    DUL: Warning: Dictionary cache DC_BOOTSTRAP is empty
    Reading BOOTSTRAP.dat 60 entries loaded
    Parsing Bootstrap$ contents
    DUL: Warning: Recreating file "dict.ddl"
    Generating dict.ddl for version 12
     OBJ$: segobjno 18, file 1 block 240
     TAB$: segobjno 2, tabno 1, file 1  block 144
     COL$: segobjno 2, tabno 5, file 1  block 144
     USER$: segobjno 10, tabno 1, file 1  block 208
    Running generated file "@dict.ddl" to unload the dictionary tables
    . unloading table                      OBJ$   72547 rows unloaded
    . unloading table                      TAB$    2137 rows unloaded
    . unloading table                      COL$  115645 rows unloaded
    . unloading table                     USER$     129 rows unloaded
    Reading USER.dat 129 entries loaded
    Reading OBJ.dat
    DUL: FATAL Error: File OBJ.dat, line 22094: identifier too long
    

    dul 11 恢复oracle 12c 报错分析
    看报错OBJ.dat报错数据,从定义上判断是长度过长

    [root@ora1221 dul11]# vi OBJ.dat 
      22091 "22435" "" "0" "JVMFCB" "" "9" ""
      22092 "22436" "" "0" "JVMFCB" "" "11" ""
      22093 "22437" "56417" "0" "JAVA$CBOBJ$" "" "2" ""
    ----  22094 "22439" "" "0" "sun/util/xml/PlatformXmlPropertiesProvider$Resolver" "" "29" ""
      22095 "22440" "" "0" "sun/util/xml/PlatformXmlPropertiesProvider$EH" "" "29" ""
      22096 "22441" "" "0" "sun/util/xml/PlatformXmlPropertiesProvider$1" "" "29" ""
      22097 "22442" "" "0" "sun/util/resources/LocaleNamesBundle" "" "29" ""
    

    对象名长度分析

    [oracle@ora1221 ~]$ ss
    
    SQL*Plus: Release 12.2.0.0.3 Production on Fri Aug 7 02:50:35 2015
    
    Copyright (c) 1982, 2016, Oracle.  All rights reserved.
    
    
    Connected to:
    Oracle Database 12c Enterprise Edition Release 12.2.0.0.3 - 64bit Production
    
    SQL> select length(object_name) from dba_objects 
      2  where object_name='sun/util/xml/PlatformXmlPropertiesProvider$Resolver';
    
    LENGTH(OBJECT_NAME)
    -------------------
                     51
    
    SQL> select max(length(object_name)) from dba_objects;
    
    MAX(LENGTH(OBJECT_NAME))
    ------------------------
                         123
    
    SQL> desc dba_objects
     Name                                      Null?    Type
     ----------------------------------------- -------- ----------------------------
     OWNER                                              VARCHAR2(128)
     OBJECT_NAME                                        VARCHAR2(128)
     SUBOBJECT_NAME                                     VARCHAR2(128)
     OBJECT_ID                                          NUMBER
     DATA_OBJECT_ID                                     NUMBER
     OBJECT_TYPE                                        VARCHAR2(23)
     CREATED                                            DATE
     LAST_DDL_TIME                                      DATE
     TIMESTAMP                                          VARCHAR2(19)
     STATUS                                             VARCHAR2(7)
     TEMPORARY                                          VARCHAR2(1)
     GENERATED                                          VARCHAR2(1)
     SECONDARY                                          VARCHAR2(1)
     NAMESPACE                                          NUMBER
     EDITION_NAME                                       VARCHAR2(128)
     SHARING                                            VARCHAR2(18)
     EDITIONABLE                                        VARCHAR2(1)
     ORACLE_MAINTAINED                                  VARCHAR2(1)
     APPLICATION                                        VARCHAR2(1)
     DEFAULT_COLLATION                                  VARCHAR2(100)
     DUPLICATED                                         VARCHAR2(1)
     SHARDED                                            VARCHAR2(1)
     CREATED_APPID                                      NUMBER
     CREATED_VSNID                                      NUMBER
     MODIFIED_APPID                                     NUMBER
     MODIFIED_VSNID                                     NUMBER
    

    在oracle 12c中对象名长度已经变为128,但是dul依旧不能支持列长度,既然作者已经在init.dul的Compatible参数曾增加了对12c的支持,那对这样明显的bug应该在不久的将来即可修复。当然这个问题,可以通过一些人工技巧绕过去

    • 使用 dul 挖数据文件初试
    • dul 10支持oracle 11g r2
    • DUL10直接支持ORACLE 8.0
    • 最新版Oracle dul支持Oracle 7.2.3
    • dul恢复truncate表测试
    • fckeditor使用说明
    • 跳过obj$坏块方法
    • 密码保护:使用dul恢复asm中数据
    • ORACLE 12C dbms_utility.expand_sql_text 查看SQL视图基表
    • goldengate 异常处理
    • shell编程——基本语法
    • 密码保护:dul扫描磁盘抢救数据


沪ICP备19023445号-2号
友情链接