标签云
asm恢复 bbed bootstrap$ dul In Memory kcbzib_kcrsds_1 kccpb_sanity_check_2 MySQL恢复 ORA-00312 ORA-00607 ORA-00704 ORA-00742 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)
- 操作系统 (103)
- 数据库 (1,701)
- DB2 (22)
- MySQL (74)
- Oracle (1,562)
- Data Guard (52)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (159)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (8)
- Oracle ASM (68)
- Oracle Bug (8)
- Oracle RAC (53)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (28)
- Oracle备份恢复 (571)
- Oracle安装升级 (94)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (81)
- 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)
-
最近发表
- fio测试io,导致磁盘文件系统损坏故障恢复
- ORA-742 写丢失常见bug记录
- Oracle 19c 202501补丁(RUs+OJVM)
- 避免 19c 数据库性能问题需要考虑的事项 (Doc ID 3050476.1)
- Bug 21915719 Database hang or may fail to OPEN in 12c IBM AIX or HPUX Itanium – ORA-742, DEADLOCK or ORA-600 [kcrfrgv_nextlwn_scn] ORA-600 [krr_process_read_error_2]
- ORA-600 ktuPopDictI_1恢复
- impdp导入数据丢失sys授权问题分析
- impdp 创建index提示ORA-00942: table or view does not exist
- 数据泵导出 (expdp) 和导入 (impdp)工具性能降低分析参考
- 19c非归档数据库断电导致ORA-00742故障恢复
- Oracle 19c – 手动升级到 Non-CDB Oracle Database 19c 的完整核对清单
- sqlite数据库简单操作
- Oracle 暂定和恢复功能
- .pzpq扩展名勒索恢复
- Oracle read only用户—23ai新特性:只读用户
- 迁移awr快照数据到自定义表空间
- .hmallox加密mariadb/mysql数据库恢复
- 2025年首个故障恢复—ORA-600 kcbzib_kcrsds_1
- 第一例Oracle 21c恢复咨询
- ORA-15411: Failure groups in disk group DATA have different number of disks.
标签归档: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执行结果截图
通过内部命令直接读取数据文件版本信息