标签云
asm恢复 bbed bootstrap$ dul In Memory kcbzib_kcrsds_1 kccpb_sanity_check_2 kfed MySQL恢复 ORA-00312 ORA-00607 ORA-00704 ORA-01110 ORA-01555 ORA-01578 ORA-08103 ORA-600 2131 ORA-600 2662 ORA-600 2663 ORA-600 3020 ORA-600 4000 ORA-600 4137 ORA-600 4193 ORA-600 4194 ORA-600 16703 ORA-600 kcbzib_kcrsds_1 ORA-600 KCLCHKBLK_4 ORA-15042 ORA-15196 ORACLE 12C oracle dul ORACLE PATCH Oracle Recovery Tools oracle加密恢复 oracle勒索 oracle勒索恢复 oracle异常恢复 Oracle 恢复 ORACLE恢复 ORACLE数据库恢复 oracle 比特币 OSD-04016 YOUR FILES ARE ENCRYPTED 勒索恢复 比特币加密文章分类
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (102)
- 数据库 (1,682)
- DB2 (22)
- MySQL (73)
- Oracle (1,544)
- Data Guard (52)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (159)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (7)
- Oracle ASM (67)
- Oracle Bug (8)
- Oracle RAC (53)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (28)
- Oracle备份恢复 (565)
- Oracle安装升级 (92)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (79)
- PostgreSQL (18)
- PostgreSQL恢复 (6)
- SQL Server (27)
- SQL Server恢复 (8)
- TimesTen (7)
- 达梦数据库 (2)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (37)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (20)
-
最近发表
- 断电引起的ORA-08102: 未找到索引关键字, 对象号 39故障处理
- ORA-00227: corrupt block detected in control file
- 手工删除19c rac
- 解决oracle数据文件路径有回车故障
- .wstop扩展名勒索数据库恢复
- Oracle Recovery Tools工具一键解决ORA-00376 ORA-01110故障(文件offline)
- OGG-02771 Input trail file format RELEASE 19.1 is different from previous trail file form at RELEASE 11.2.
- OGG-02246 Source redo compatibility level 19.0.0 requires trail FORMAT 12.2 or higher
- GoldenGate 19安装和打patch
- dd破坏asm磁盘头恢复
- 删除asmlib磁盘导致磁盘组故障恢复
- Kylin Linux 安装19c
- ORA-600 krse_arc_complete.4
- Oracle 19c 202410补丁(RUs+OJVM)
- ntfs MFT损坏(ntfs文件系统故障)导致oracle异常恢复
- .mkp扩展名oracle数据文件加密恢复
- 清空redo,导致ORA-27048: skgfifi: file header information is invalid
- A_H_README_TO_RECOVER勒索恢复
- 通过alert日志分析客户自行对一个数据库恢复的来龙去脉和点评
- ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的SERVICE_NAME
标签归档:dul
Oracle dul支持Oracle 12.2(12c)
随着oracle 12.2正式版的临近,通过最新版dul(Data UnLoader: 11.2.0.1.1)的测试,发现对于12c的版本支持依旧有问题,虽然作者在版本中较为明确的表示了支持12c但是测试效果不尽人意.
dul 11对oracle 12c的支持(Compatible参数表明支持12c)
[oracle@localhost dul]$ ./dul Data UnLoader: 11.2.0.1.1 - Internal Only - on Tue Feb 21 23:39:08 2017 with 64-bit io functions and the decompression option Copyright (c) 1994 2016 Bernard van Duijnen All rights reserved. Strictly Oracle Internal Use Only Within one week you will need a more recent DUL version for this os DUL: Warning: Compatible is set to 11 Values can be 6|7|8|9|10|11|12
在12.2的版本中运行dul结果如下
[oracle@xifenfei ~]$ ss SQL*Plus: Release 12.2.0.1.0 Production on Tue Feb 21 23:54:43 2017 Copyright (c) 1982, 2016, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production SQL> set lines 150 SQL> select * from v$version; BANNER CON_ID -------------------------------------------------------------------------------- ---------- Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production 0 PL/SQL Release 12.2.0.1.0 - Production 0 CORE 12.2.0.1.0 Production 0 TNS for Linux: Version 12.2.0.1.0 - Production 0 NLSRTL Version 12.2.0.1.0 - Production 0 [root@xifenfei dul]# ./dul Data UnLoader: 11.2.0.1.1 - Internal Only - on Tue Feb 21 23:53:37 2017 with 64-bit io functions and the decompression option Copyright (c) 1994 2016 Bernard van Duijnen All rights reserved. Strictly Oracle Internal Use Only Within one week you will need a more recent DUL version for this os Found db_id = 766547632 Found db_name = ORCL12C 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 DUL: Warning: Recreating file "BOOTSTRAP.ctl" 60 rows unloaded 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$ DUL: Warning: Recreating file "OBJ.ctl" 72655 rows unloaded . unloading table TAB$ DUL: Warning: Recreating file "TAB.ctl" 2162 rows unloaded . unloading table COL$ DUL: Warning: Recreating file "COL.ctl" 114785 rows unloaded . unloading table USER$ DUL: Warning: Recreating file "USER.ctl" 130 rows unloaded Reading USER.dat 130 entries loaded Reading OBJ.dat DUL: FATAL Error: File OBJ.dat, line 22079: identifier too long
这个报错DUL: FATAL Error: File OBJ.dat比较明显由于dul在加载obj$对象的时候有对象字符太长导致加载失败
这个是由于在oracle 12c中已经允许对象名/列名程度为128,而不是以前版本的30,从而引起了这个问题,虽然dul的作者已经在dict.ddl中做了限制,但是目前看尚未生效
特殊处理后的dul可以完美支持12c
[root@xifenfei dul]# ./dul Data UnLoader: 11.2.0.1.1 - Internal Only - on Wed Feb 22 00:04:40 2017 with 64-bit io functions and the decompression option Copyright (c) 1994 2016 Bernard van Duijnen All rights reserved. Strictly Oracle Internal Use Only Within one week you will need a more recent DUL version for this os Found db_id = 766547632 Found db_name = ORCL12C 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 DUL: Warning: Recreating file "BOOTSTRAP.ctl" 60 rows unloaded 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$ DUL: Warning: Recreating file "OBJ.ctl" 72655 rows unloaded . unloading table TAB$ DUL: Warning: Recreating file "TAB.ctl" 2162 rows unloaded . unloading table COL$ DUL: Warning: Recreating file "COL.ctl" 114785 rows unloaded . unloading table USER$ DUL: Warning: Recreating file "USER.ctl" 130 rows unloaded Reading USER.dat 130 entries loaded Reading OBJ.dat 72655 entries loaded and sorted 72655 entries Reading TAB.dat 2162 entries loaded Reading COL.dat 114785 entries loaded and sorted 114785 entries DUL> unload table sys.undo$; . unloading table UNDO$ 21 rows unloaded DUL> exit Life is DUL without it
这里是通过特殊处理之后dul才能够支持12c版本,期待作者在后续版本中完善相关工作,在恢复的经验中dul还是一大利器.
oracle dul 11 正式发布
千呼万唤oracle dul 11终于发布了,迫不及待的下载来测试,现在版本号为dul 11.2.0.0.1,目前只发布了for linux,其他版本估计要等等.期待该版本有引进新功能
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应该在不久的将来即可修复。当然这个问题,可以通过一些人工技巧绕过去
最新版Oracle dul支持Oracle 7.2.3
网上有朋友发过来了oracle 7.2.3的数据文件说dul新版本无法支持,我进行测试,可以正常使用dul挖oracle 7.2.3版本oracle.再次实测刷新dul对于oracle老版本支持记录(以前实测dul支持oracle 8.0:DUL10直接支持ORACLE 8.0,DUL挖ORACLE 8.0数据库).根据dul官方说法从oracle 6 及其以后版本都支持
最新版dul(10.2.0.6.11)支持oracle 7.2.3
H:\temp\recover\dul10>dul.exe Data UnLoader: 10.2.0.6.11 - Internal Only - on Sun Nov 08 22:45:26 2015 with 64-bit io functions Copyright (c) 1994 2015 Bernard van Duijnen All rights reserved. Strictly Oracle Internal Use Only DUL: Warning: Recreating file "dul.log" Found db_id = 1190425910 Found db_name = ORA7 DUL> show datafiles; ts# rf# start blocks offs open err file name UNK 1 0 524289 0 0 0 H:\temp\recover\headof\headof\home\systora7.dbf UNK 2 0 524289 0 1 0 H:\temp\recover\headof\headof\home1\rbsora7.dbf UNK 3 0 524289 0 0 0 H:\temp\recover\headof\headof\home\tempora7.dbf UNK 4 0 15361 0 0 0 H:\temp\recover\headof\headof\home\toolora7.dbf UNK 5 0 513 0 1 0 H:\temp\recover\headof\headof\home\usrora7.dbf UNK 6 0 524289 0 0 0 H:\temp\recover\headof\headof\home\BSYS_DISK1.dbf UNK 7 0 524289 0 1 0 H:\temp\recover\headof\headof\home1\BSYS_DISK2.dbf UNK 8 0 512001 0 1 0 H:\temp\recover\headof\headof\home1\BALANCE_DATA01.dbf UNK 9 0 262145 0 0 0 H:\temp\recover\headof\headof\home\BALANCE_IDX01.dbf UNK 10 0 524289 0 0 0 H:\temp\recover\headof\headof\home\CARD.dbf UNK 11 0 524289 0 0 0 H:\temp\recover\headof\headof\home\LARGE_TRANS.dbf UNK 12 0 524289 0 0 0 H:\temp\recover\headof\headof\home\tool01.dbf UNK 13 0 524289 0 0 0 H:\temp\recover\headof\headof\home\system1.dbf UNK 14 0 524289 0 0 0 H:\temp\recover\headof\headof\home\balance_data02.dbf UNK 15 0 524289 0 0 0 H:\temp\recover\headof\headof\home\BSYS_DISK3.dbf UNK 16 0 524289 0 0 0 H:\temp\recover\headof\headof\home\BSYS_DISK4.dbf UNK 17 0 524289 0 0 0 H:\temp\recover\headof\headof\home\BSYS_DISK5.dbf UNK 18 0 524289 0 0 0 H:\temp\recover\headof\headof\home\BSYS_DISK6.dbf UNK 19 0 524289 0 0 0 H:\temp\recover\headof\headof\home\system2.dbf UNK 20 0 524289 0 0 0 H:\temp\recover\headof\headof\home\card1.dbf DUL> bootstrap; Probing file = 1, block = 377 database version 7 bootstrap$ at file 1, block 302 . unloading table BOOTSTRAP$ DUL: Warning: block number is non zero but marked deferred trying to process it anyhow 45 rows unloaded DUL: Warning: Dictionary cache DC_BOOTSTRAP is empty Reading BOOTSTRAP.dat 45 entries loaded Parsing Bootstrap$ contents DUL: Warning: Recreating file "dict.ddl" Generating dict.ddl for version 7 OBJ$: segobjno 17, file 1 block 162 TAB$: segobjno 1, tabno 1, file 1 block 52 COL$: segobjno 1, tabno 5, file 1 block 52 USER$: segobjno 9, tabno 1, file 1 block 142 Running generated file "@dict.ddl" to unload the dictionary tables . unloading table OBJ$ 6076 rows unloaded . unloading table TAB$ 1067 rows unloaded . unloading table COL$ 18105 rows unloaded . unloading table USER$ 56 rows unloaded Reading USER.dat 56 entries loaded Reading OBJ.dat 6076 entries loaded and sorted 6076 entries Reading SCANNEDLOBPAGE.dat 0 entries loaded and sorted 0 entries Reading TAB.dat 1067 entries loaded Reading COL.dat 18105 entries loaded and sorted 18105 entries Reading SEG.dat 0 entries loaded Reading EXT.dat 0 entries loaded and sorted 0 entries Reading COMPATSEG.dat 0 entries loaded Reading BOOTSTRAP.dat 45 entries loaded DUL: Warning: Recreating file "dict.ddl" Generating dict.ddl for version 7 OBJ$: segobjno 17, file 1 block 162 TAB$: segobjno 1, tabno 1, file 1 block 52 COL$: segobjno 1, tabno 5, file 1 block 52 USER$: segobjno 9, tabno 1, file 1 block 142 Running generated file "@dict.ddl" to unload the dictionary tables . unloading table OBJ$ DUL: Warning: Recreating file "OBJ.ctl" 6076 rows unloaded . unloading table TAB$ DUL: Warning: Recreating file "TAB.ctl" 1067 rows unloaded . unloading table COL$ DUL: Warning: Recreating file "COL.ctl" 18105 rows unloaded . unloading table USER$ DUL: Warning: Recreating file "USER.ctl" 56 rows unloaded Reading USER.dat 56 entries loaded Reading OBJ.dat 6076 entries loaded and sorted 6076 entries Reading SCANNEDLOBPAGE.dat 0 entries loaded and sorted 0 entries Reading TAB.dat 1067 entries loaded Reading COL.dat 18105 entries loaded and sorted 18105 entries Reading SEG.dat 0 entries loaded Reading EXT.dat 0 entries loaded and sorted 0 entries Reading COMPATSEG.dat 0 entries loaded Reading BOOTSTRAP.dat 45 entries loaded DUL> unload table user$; . unloading table USER$ DUL: Warning: Recreating file "USER.ctl" 56 rows unloaded DUL>
数据库版本截图
dul执行结果截图
通过内部命令直接读取数据文件版本信息