直接挖掘数据文件的数据

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

功能:

mydul是一个和Oracle dul类似的工具,可以直接挖掘oracle数据文件的数据

使用方法:

/home/sun/src/mydul>mydul

PAY ATTENTION,THIS TOOL IS DESUPPORTED BY ORACLE

Usage: mydul -s system file -d datafile [ -t table name ] [-u owner name]

[-p output path] [-f full scan flag]

-s: the oracle system tablespace datafile 系统数据文件

-d: the datafile will be duled 用户数据文件

-t: data of the table will be duled 对指定的表进行挖掘(表名)

-u: data of user will be duled 对该用户的数据进行挖掘

-p: path of the output file 指定输出文件存放的路径

-f: full scan flag,ignore the extent map 数据文件全扫描

Version: 1.2 Author: WZSH-SUN

Contact me: Email:wzsh-sun@wzccb.com MSN:jerrysun1981@hotmail.com

注重:

1、系统数据文件是必须要的,因为表结构的定义都在系统数据文件中,不然数据就算挖出来也没有什么意义。

2、-s -d参数是必须的,其他参数可以选填

输出:

被挖掘的每个表的结构和数据被写在一个文件里,格式为:USER_TABLENAME.txt

如:

CREATE TABLE LONC_COLLATE ( PLEDGE_CONTRACT_NO CHAR(30), ACCT_SEQNO NUMBER(8), CONTRACT_NO CHAR(30), OPER_NO CHAR(8), TRANS_DATE DATE, SET_DATE DATE );

insert into LONC_COLLATE values ('7352004A259 ',2004233,'WZCB7

352005Jb00195 ','00494 ',to_date('2005-06-06 00:00:00','YYYY-MM-DD

hh24:mi:ss'),to_date('2005-06-06 00:00:00','YYYY-MM-DD hh24:mi:ss'));

insert into LONC_COLLATE values ('80120050125 ',20050297,'WZCB

8012005Jb00480 ','01032 ',to_date('2005-06-06 00:00:00','YYYY-MM-DD

hh24:mi:ss'),to_date('2005-06-06 00:00:00','YYYY-MM-DD hh24:mi:ss'));

特点:

1、目前支持Linux,aix下oracle 9i 10g各种block_size的数据库的挖掘(我想对其他UNIX系统应该也支持,只是没环境编译测试)

2、支持普通数据文件和裸设备的数据挖掘(由于没有linux裸设备环境,只测了aix)

3、支持普通表空间和assm表空间的数据挖掘

4、支持行迁移和行链接的数据挖掘

5、支持的数据类型包括NUMBER,CHAR,VARCHAR2,NCHAR,NVARCHAR2,DATE,TIMESTAMP,RAW,BFILE,LONG,ROWID

需完善的:

1、目前不支持一个segment有多个extent map的情况,由于环境有限,这种情况也比较难模拟

2、不支持大数据类型

3、测试不足

例子:

$ ls

archs demo01.dbf redo21.log sysaux01.dbf undotbs01.dbf

control01.ctl demo02.dbf redo31.log system01.dbf

control02.ctl redo11.log sun temp01.dbf

$ mydul -s system01.dbf -d demo01.dbf demo02.dbf

-----------------数据库基本信息--------------------

数据库名称[SUN16K]

数据库ID[198075710]

数据库块大小[16384]

---------------------------------------------------

正在挖掘BOOTSTRAP$数据,

共2块,已经挖掘[2]块

正在挖掘OBJ$数据,共51块,已经挖掘[51]块

正在挖掘TAB$数据,共236块,已经挖掘[236]块

正在挖掘USER$数据,共1块,已经挖掘[1]块

正在挖掘T1数据,共53块,已经挖掘[53]块

正在挖掘T2数据,共12块,已经挖掘[12]块

正在挖掘T3数据,共1块,已经挖掘[1]块

挖掘结束,共消耗[3]秒时间,共挖掘[3]个表

$ ls

DEMO_T1.txt archs demo01.dbf redo21.log sysaux01.dbf undotbs01.dbf

DEMO_T2.txt control01.ctl demo02.dbf redo31.log system01.dbf

DEMO_T3.txt control02.ctl redo11.log sun temp01.dbf

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航