ORACLE DUL 工具使用方法介绍

本文介绍了如何使用DUL工具来处理ORACLE数据库的修复和数据导出。DUL用于在数据库损坏但仍需确保数据正确性的情况下替代其他方法。文章详细阐述了从创建init.dul和control.dul文件,到导出数据对象信息,再到调用DUL进行数据导出的整个流程。此外,还讨论了在段头块损坏、数据文件头损坏和无系统表空间情况下的数据导出策略。
摘要由CSDN通过智能技术生成

如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

诗檀软件专业数据库修复团队

服务热线 : 13764045638 QQ号:47079569 邮箱:service@parnassusdata.com

 

 

1、介绍

这篇文档描述如何使用DUL,而不是完整的DUL功能描述。

DUL是用来替代其他方法无法实现的数据校验。也就是无法用export和SQL*Loader。数据库可能被损坏但数据库必须100%是正确的。在导出时会检查确认所有的数据库都是正确的并属于正确的段。如果DUL发现了错误的块,错误信息会被输出到文件里,但是并不会中断导出下一行或下一个块。

 

2、使用DUL

 

首先要检查你要导出的对象是否有相应的信息在数据库里。

会去从USER$, OBJ$, TAB$ 和 COL$中检索信息。

DUL会从系统表空间里获取信息,系统表空间数据文件必须包含控制文件,如果系统表空间文件不存在,那么看第六步。

2.1创建合适的“init.dul”文件

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

REM平台指定参数(NT)

REM能获取的最常见平台的参数列表:。

osd_dba_file_bits=10

osd_c_struct_alignment=32

osd_file_leader_size=1

osd_word_size=32

REM dul字典缓冲区大小如果其中一个值过低,启动将会失败。

dc_columns=2000000

dc_tables=10000

dc_objects=1000000

dc_users=400

dc_segments=100000

控制文件的位置和文件名,默认值在control.dul里

REM 在当前的路径control_file=D:\Dul\control_orcl.dul

 

数据库块大小,可以在init.ora中的文件中找到,或在服务器管理器中执行“show parameter %db_block_size%” 被检索到,将该参数更改为损坏数据块的块大小。

db_block_size=4096

 

当数据需要导出/导入格式,它可以/必须被指定。REM必须制定导出/导入的文件格式。REM必须创建一个可以被入工具使用的文件,虽然生成的文件与由EXP工具生成的表模式导出完全不同。它是一个有创建表结构语句和表数据的表转储文件。grants,存储子句,触发器不包括在这个转储文件中!

export_mode=true

(false表示是sqlloader,true表示imp)

REM兼容参数可以设置为6,7或者8

compatible=8

 

该参数是可选的并能在REM不支持的长文件名(e.g. 8.3 DOS)的平台,或当文件格式DUL使用 “owner_name.table_name.ext”不可接受时被指定。在这里,转储文件会类似dump001.ext,dump002.ext,等。

file = dump

 

2.2创建”control.dul”文件

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

在数据库mount的状态下,你可以执行下面的查询语句知道数据库的逻辑表空间和物理数据文件结构

Oracle 6, 7

———–

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值