- 浏览: 62940 次
- 性别:
- 来自: 深圳
-
文章分类
最新评论
dul工具使用,主要设置init.dul,control.dul两个文件
control.dul文件主要内容,使用:
select ts#,rfile#,name from v$datafile;
查询数据文件的文件编号,文件位置.所以每次数据库中增加新的数据文件需要记录该查询结果
init.dul:设置dul运行的参数
osd_big_endian_flag=true
osd_dba_file_bits=10
osd_c_struct_alignment=32
osd_file_leader_size=1
osd_word_size = 32
dc_columns=2000000
dc_tables=10000
dc_objects=1000000
dc_users=400
dc_segments=100000
control_file=control11.dul
db_block_size=8192
export_mode=false
compatible=11
BUFFER=10000000
LDR_ENCLOSE_CHAR=|
其中osd_big_endian_flag参数,unix使用:
#echo dul |od –x
如果输出的结果为:
0000000 6475 6c0a
0000004
你运行的平台是big endian的,即osd_big_endian_flag=TRUE。
如果输出结果为:
0000000 7564 0a6c
0000004
你运行的平台是little endian的,即osd_big_endian_flag=FALSE
其中osd_dba_filebits:
SQL>select dump(chartorowid('0.0.1')) from dual;
Typ=69 Len=6: 8,0,0,0,0,0 -> osd_dba_filebits = 5 (SCO)
Typ=69 Len=6: 4,0,0,0,0,0 -> osd_dba_filebits = 6 (Sequent , HP)
Typ=69 Len=6: 1,0,0,0,0,0 -> osd_dba_filebits = 8 (NCR,AIX)
Typ=69 Len=6: 0,16,0,0,0,0 -> osd_dba_filebits = 12 (MVS)
Typ=69 Len=10: 0,0,0,0,0,64,0,0,0,0 ->osd_dba_filebits = 10
其中osd_c_struct_alignment:取值0,16,32
SQL>SELECT *
FROM V$TYPE_SIZE
WHERE TYPE IN ('KCBH', 'KTNO', 'KCBH', 'KTBBH', 'KTBIT', 'KDBH', 'KTECT','KTETB', 'KTSHC');
查询结果:
如果查询结果是如下这样的,osd_c_struct_alignment需设成32。
COMPONEN TYPE DESCRIPTION TYPE_SIZE
-------- -------- -------------------------------- ----------
K KTNO TABLE NUMBER IN CLUSTER 1
KCB KCBH BLOCK COMMON HEADER 20
KTB KTBIT TRANSACTION VARIABLE HEADER 24
KTB KTBBH TRANSACTION FIXED HEADER 48
KDB KDBH DATA HEADER 14
KTE KTECT EXTENT CONTROL 44
KTE KTETB EXTENT TABLE 8
KTS KTSHC SEGMENT HEADER 8
8 rows selected.
其中osd_file_leader_size:
Unix:1
Vms:0
Desktop:512
Others:未知
使用步骤:
数据字典可用:
1:bootstrap;
2:unload table owner.table;
unload user username;
unload database;
数据字典不可用:
数据字典不可用导致数据表名,字段名,类型都不能识别,需要熟悉业务系统的人帮助恢复
有此可见系统表空间的重要性!
1.scan database;
2.scan tables;scan extents;
echo scan tables \; | dul > scan.out &
使用方法总结于此!
control.dul文件主要内容,使用:
select ts#,rfile#,name from v$datafile;
查询数据文件的文件编号,文件位置.所以每次数据库中增加新的数据文件需要记录该查询结果
init.dul:设置dul运行的参数
osd_big_endian_flag=true
osd_dba_file_bits=10
osd_c_struct_alignment=32
osd_file_leader_size=1
osd_word_size = 32
dc_columns=2000000
dc_tables=10000
dc_objects=1000000
dc_users=400
dc_segments=100000
control_file=control11.dul
db_block_size=8192
export_mode=false
compatible=11
BUFFER=10000000
LDR_ENCLOSE_CHAR=|
其中osd_big_endian_flag参数,unix使用:
#echo dul |od –x
如果输出的结果为:
0000000 6475 6c0a
0000004
你运行的平台是big endian的,即osd_big_endian_flag=TRUE。
如果输出结果为:
0000000 7564 0a6c
0000004
你运行的平台是little endian的,即osd_big_endian_flag=FALSE
其中osd_dba_filebits:
SQL>select dump(chartorowid('0.0.1')) from dual;
Typ=69 Len=6: 8,0,0,0,0,0 -> osd_dba_filebits = 5 (SCO)
Typ=69 Len=6: 4,0,0,0,0,0 -> osd_dba_filebits = 6 (Sequent , HP)
Typ=69 Len=6: 1,0,0,0,0,0 -> osd_dba_filebits = 8 (NCR,AIX)
Typ=69 Len=6: 0,16,0,0,0,0 -> osd_dba_filebits = 12 (MVS)
Typ=69 Len=10: 0,0,0,0,0,64,0,0,0,0 ->osd_dba_filebits = 10
其中osd_c_struct_alignment:取值0,16,32
SQL>SELECT *
FROM V$TYPE_SIZE
WHERE TYPE IN ('KCBH', 'KTNO', 'KCBH', 'KTBBH', 'KTBIT', 'KDBH', 'KTECT','KTETB', 'KTSHC');
查询结果:
如果查询结果是如下这样的,osd_c_struct_alignment需设成32。
COMPONEN TYPE DESCRIPTION TYPE_SIZE
-------- -------- -------------------------------- ----------
K KTNO TABLE NUMBER IN CLUSTER 1
KCB KCBH BLOCK COMMON HEADER 20
KTB KTBIT TRANSACTION VARIABLE HEADER 24
KTB KTBBH TRANSACTION FIXED HEADER 48
KDB KDBH DATA HEADER 14
KTE KTECT EXTENT CONTROL 44
KTE KTETB EXTENT TABLE 8
KTS KTSHC SEGMENT HEADER 8
8 rows selected.
其中osd_file_leader_size:
Unix:1
Vms:0
Desktop:512
Others:未知
使用步骤:
数据字典可用:
1:bootstrap;
2:unload table owner.table;
unload user username;
unload database;
数据字典不可用:
数据字典不可用导致数据表名,字段名,类型都不能识别,需要熟悉业务系统的人帮助恢复
有此可见系统表空间的重要性!
1.scan database;
2.scan tables;scan extents;
echo scan tables \; | dul > scan.out &
使用方法总结于此!
发表评论
-
oracle11g提示服务不可用
2014-09-26 17:36 587今天遇到一个问题,本地1521端口启用,但远程不能访问 修改监 ... -
手工用户创建,老是记不住,记录
2014-09-18 13:53 332Oracle创建表空间、创建用户以及授权、查看权限 创建临 ... -
gdul
2014-08-15 15:16 480一直想自己也写个dul工具,无奈理解得不够深入 几天前看到别人 ... -
SQL调优
2014-06-20 14:14 399网上看到如下sql: 留一个线索在此 select /*+ ... -
表闪回
2014-06-19 16:13 347使用delete删除数据的情况,如果是truncate只能用数 ... -
外键约束
2014-06-19 16:02 395删除一个表时,提示有外键约束,ORA-02292: 违反完整约 ... -
get_ddl使用
2014-05-19 16:45 434查看oracle中表定义等,需要使用dbms_metadata ... -
PL/SQL语法
2014-05-09 11:38 393今天写plsql,很久没写了,很简单的,也不想参看以前写的,怎 ... -
归档日志满的处理
2014-05-04 10:07 781只是一个记录贴,方便查阅。完全没有新意 归档日志一般需要保留 ... -
数据的导出导入
2013-12-30 12:41 360异构数据库之间数据交换,主要使用txt文本文件 以下记录一个工 ... -
exp增量
2013-12-17 17:09 356很久没有写文章了,今天遇到一个老问题,exp增量备份 记 ... -
查找oracle的操作日志
2013-12-17 16:48 567今天程序有些功能不能用了,查了一下,发现某些表对象删除了 ... -
数结构的查询
2013-09-27 18:33 0很早之前就使用过该功能,每次都记不住,每次都要搜索 索性记录一 ... -
面试中的SQL
2013-09-27 12:07 473虽然有些时间没有面试过了 在我的印象中,sql中行列转换的问题 ... -
oracle SQL特性使用
2013-09-27 11:25 392oracle分析函数 统计记录中类似1/222这样的记录 se ... -
oracle内部原理
2013-09-26 11:17 962总是以为对oracle很了解,已经使用了好多年,基本是增、删、 ... -
oracle跟踪程序执行的SQL
2013-09-24 15:34 1120专门记录一下,对于系统调优很重要 1.oracle的10046 ... -
ORA-01555处理
2013-09-22 16:44 600有时表太大,导出时出现1555错误,可以采用分段方式处理。 以 ... -
BLOB字段操作
2013-09-18 10:00 894置为空或NULL update blob_test set b ... -
统计表的大小
2013-09-11 17:29 376统计用户表的大小: SELECT * FROM ( SEL ...
相关推荐
同时也有单库超过10TB的使用例子,这得益于PRM-DUL 内置了小型嵌入式数据库,当索要恢复的ORACLE数据库很大时,PRM-DUL采用嵌入的数据库来存放找到的ORACLE 源数据,这样可以对源数据做索引和灵活的查询。...
- **环境准备**:包括安装和配置必要的软件,如Oracle客户端和DUL工具。 - **数据文件定位**:确定数据库的数据文件和控制文件的位置。 - **分析和扫描**:使用DUL分析数据文件,识别表空间、数据块和记录。 - *...
本文将详细介绍Oracle DUL工具的使用方法、操作步骤,并结合相关资源进行探讨。 首先,Oracle DUL工具的核心功能在于其对数据库的直接访问能力,它能够绕过Oracle的SQL接口,直接读取和修改数据文件,从而在不启动...
Oracle DUL的使用不仅需要对Oracle数据库的内部结构有深入理解,还需要熟悉其数据存储和恢复的原理。源码的公开使得技术爱好者和专业人士有机会研究Oracle的数据恢复机制,提升故障排查和数据安全能力。同时,这也为...
Oracle DUL工具,全称Data Utility for Oracle,是Oracle数据库恢复领域的一款重要工具,尤其在数据丢失或遇到坏块问题,且没有可用备份时,它成为拯救数据的最后防线。这款工具适用于Oracle数据库的8i和9i版本,...
PRM-DUL Oracle数据库恢复工具(简称PRM-DUL)是一款专为Oracle数据救援而研发的企业级工具。可在多个操作平台(AIX/HPUX/SOLARIS/Linux/Windows)使用并支持对Oracle 9i/10g/11g/12c各版本数据库的数据救援工作。...
Oracle DUL,全称为Data Recovery Utility,是Oracle数据库系统中的一款强大的数据恢复工具。它主要用于处理数据库的物理层恢复,特别是在遇到数据文件损坏、误删除或其他严重问题时,DUL能够帮助数据库管理员进行...
Oracle DUL全称Oracle Data Unloader,泛指作为Oracle数据库文件的数据导出工具,可以在Oracle数据库无法正常启动的情况下对数据文件进行扫描和数据导出。 除了Oracle内部使用服务程序外,市面上还有可选择的第三方...
《Oracle DUL工具详解——数据恢复利器》 Oracle数据库作为全球广泛使用的数据库系统之一,其稳定性和安全性备受赞誉。然而,任何系统都有可能出现故障,当遇到Oracle数据库无法正常启动或严重损坏的情况时,数据...
在"readme.txt"文件中,通常会包含关于如何使用DUL工具的详细指南,包括安装、配置、基本命令用法以及一些常见的问题解决方案。"dul数据恢复.zip"则可能包含了DUL工具的安装程序、示例脚本和其他辅助文件。 在实际...
随着数据库版本的变化,DUL工具也在逐渐升级之中,对应Oracle8 / Oracle8i / Oracle9i / Oracle10g都有其相应版本。 作为DBA们首先应该知道DBA第一守则:备份重于一切。首先应该把备份作为数据恢复的第一手段。 ...
PRM可以再无备份的情况下恢复被truncated掉的表,也可以恢复无法打开的Oracle数据库(Alter database open... PRM是图形化增强版的Oracle DUL工具,同时具备很多Oracle DUL不具备的特性。 而且PRM无需学任何新命令。
Oracle Data Unloader(DUL)是Oracle数据库管理工具的一个组件,用于高效地导出大量数据。这个源代码可能包含了用于批量卸载Oracle数据库表数据到文件的程序逻辑。OracleBlock.java很可能是源代码中的关键部分,它...
- **使用DUL工具**:通过DUL工具抽取误删除的表,将其导出为dmp文件。 - **导入到目标数据库**:使用IMP工具将dmp文件导入目标数据库,完成恢复。 5. **RMAN(Recovery Manager)**: RMAN是Oracle提供的一个...
同时也有单库超过10TB的使用例子,这得益于PRM-DUL 内置了小型嵌入式数据库,当索要恢复的ORACLE数据库很大时,PRM-DUL采用嵌入的数据库来存放找到的ORACLE 源数据,这样可以对源数据做索引和灵活的查询。
PRM-DUL Oracle数据库恢复工具,一款专为Oracle数据救援而研发的企业级工具。可在多个操作平台(AIX/HPUX/SOLARIS/Linux/Windows)使用并支持对Oracle 9i/10g/11g/12c各版本数据库的数据救援工作。软件基于JAVA 开发...
本文将详细介绍如何使用Oracle DUL工具来恢复一张被误删除的表——`account.al_bill_dtl`。 根据描述,“数据抽取工具,可以将丢失的文件再次找回!”这里的“数据抽取工具”即指Oracle DUL工具,它能够在不完全...
【标题】"gengyonghui的dul工具gdul for Linux版本"涉及的核心知识点是Oracle数据库的数据卸载(unload)以及一个特定的开源工具——gdul。gdul是由开发者gengyonghui创建的,专为Linux操作系统设计,用于在面临特殊...
"PRM技术白皮书.pdf"和"PRM – PARNASSUSDATA RECOVERY MANAGER For Oracle Database介绍手册.pdf"提供了详细的软件使用指南和技术背景,帮助用户理解和操作该工具。 "prm_startup.sh"是另一个启动脚本,可能包含...