datafile.txt
1 /oracle/oradata/znjtepp/system01.dbf 828375040
2 /oracle/oradata/znjtepp/XSPGIMS_DEVICE.dbf 3877634048
3 /oracle/oradata/znjtepp/sysaux01.dbf 513802240
4 /oracle/oradata/znjtepp/users01.dbf 473169920
5 /oracle/oradata/znjtepp/undotbs1.dbf 4294967296
6 /oracle/oradata/znjtepp/XSPGIMS_FILE.dbf 3328180224
7 /oracle/oradata/znjtepp/XSPGIMS_FUEL.dbf 524288000
8 /oracle/oradata/znjtepp/XSPGIMS_MATERIAL.dbf 524288000
9 /oracle/oradata/znjtepp/XSPGIMS_PLAN.dbf 524288000
10 /oracle/oradata/znjtepp/XSPGIMS_PRODUCE.dbf 2359296000
11 /oracle/oradata/znjtepp/XSPGIMS_SEQURITY.dbf 104857600
12 /oracle/oradata/znjtepp/XSPGIMS_SYSTEM.dbf 943718400
13 /oracle/oradata/znjtepp/XSPGIMS_OTHER.dbf 314572800
14 /oracle/oradata/znjtepp/RIMS_DATA.dbf 209715200
15 /oracle/oradata/znjtepp/XSPGIMS_MONITOR.dbf 314572800
16 /oracle/oradata/znjtepp/XSPGIMS_HUMANRESOURCE.dbf 314572800
17 /oracle/oradata/TS1.ORA 1048576
18 /oracle/oradata/TS2.ORA 1048576
19 /oracle/oradata/TS3.ORA 1048576
20 /oracle/oradata/TS4.ORA 1048576
21 /oracle/oradata/TS5.ORA 1048576
22 /oracle/oradata/TS6.ORA 1048576
23 /oracle/oradata/TS7.ORA 1048576
24 /oracle/oradata/TS8.ORA 1048576
25 /oracle/oradata/TS9.ORA 1048576
26 /oracle/oradata/TS10.ORA 1048576
27 /oracle/oradata/TS11.ORA 1048576
28 /oracle/oradata/TS12.ORA 1048576
29 /oracle/oradata/TSI1.ORA 1048576
30 /oracle/oradata/TSI2.ORA 1048576
31 /oracle/oradata/TSI3.ORA 1048576
32 /oracle/oradata/TSI4.ORA 1048576
33 /oracle/oradata/TSI5.ORA 1048576
34 /oracle/oradata/TSI6.ORA 1048576
35 /oracle/oradata/TSI7.ORA 1048576
36 /oracle/oradata/TSI8.ORA 1048576
37 /oracle/oradata/TSI9.ORA 1048576
38 /oracle/oradata/TSI10.ORA 1048576
39 /oracle/oradata/TSI11.ORA 1048576
40 /oracle/oradata/TSI12.ORA 1048576
para.txt
blocksize=8192
listfile=datafile.txt
mode=edit
SQL> select header_file,header_block from dba_segments where owner='LUDA' and segment_name = 'T1';
HEADER_FILE HEADER_BLOCK
———– ————
4 18587
这里以表t1的段头为例
RDBA由,rfile# + block#组成的
相对文件号10位 block号22位
先算22位的BLOCK,其他的就是FILE
如果是ROWID的话,先算16的slot
#########################set 命令################################################
set 命令 定位数据块。
例子
定位 4号文件的18587号块
set file 4 block 18587
用rdba定位的话先换算 file 4 和 18587 号块
从右边开始算起 18587 对应2进制 00 0000 0100 1000 1001 1011
4 对应2进制 100
所以这里rdba为 0000 0010 000 0000 0100 1000 1001 1011 转换成16进制为 0x100489b
所以也可以定位成:
set dba 0x100489b
BBED> set dba 0x100489b
DBA 0x0100489b (16795803 4,18587)
###工具包换算10进制 dbms_utility.data_block_address_file
用法
SQL> select dbms_utility.data_block_address_file(20971712) "file",dbms_utility.data_block_address_block(20971712) "block" from dual;
file block
———- ———-
5 192
###
set dba 4,18587
BBED> set dba 4,18587
DBA 0x0100489b (16795803 4,18587)
set filename
BBED> set filename "/oracle/oradata/znjtepp/users01.dbf"
FILENAME /oracle/oradata/znjtepp/users01.dbf
set file
BBED> set file 4
FILE# 4
set block and set block + ora –
BBED> set block 100
BLOCK# 100
BBED> set block +100
BLOCK# 200
BBED> set block +20
BLOCK# 220
BBED> set block -200
BLOCK# 20
set blocksize
set listfile这两个set都是用在切换配置文件时候用的
#设置屏幕显示区域
BBED> set width 100
WIDTH 100
########################offset 偏移量 以及count #################################################
offset 偏移量
BBED> dump
File: /oracle/oradata/znjtepp/users01.dbf (4)
Block: 18587 Offsets: 0 to 511 Dba:0x0100489b
————————————————————————
23a20000 0100489b 0031fc19 00000104 f8880000 00000000 00000000 00000000
00000000 00000011 00000100 0a9c0000 00000010 00000080 00000080 01004989
00000000 00000010 00000000 000000f4 00000000 00000000 00000000 00000010
…..
BBED> set offset 200
OFFSET 200
BBED> dump
File: /oracle/oradata/znjtepp/users01.dbf (4)
Block: 18587 Offsets: 200 to 711 Dba:0x0100489b
————————————————————————
00000000 00000000 00010000 00002000 00000000 00001434 00000000 0100489a
00000001 0100490a 0100489a 00000000 00000000 00000000 00000000 00000000
00000011 00000000 0000d7c4 10000000 01004899 00000008 010048a1 00000008
….
count可以设置dump的内容
例:
BBED> set count 5000
COUNT 5000
BBED> dump
File: /oracle/oradata/znjtepp/users01.dbf (4)
Block: 18587 Offsets: 200 to 5199 Dba:0x0100489b
————————————————————————
00000000 00000000 00010000 00002000 00000000 00001434 00000000 0100489a
00000001 0100490a 0100489a 00000000 00000000 00000000 00000000 00000000
00000011 00000000 0000d7c4 10000000 01004899 00000008 010048a1 00000008
….
BBED> set file 4 block 18587
FILE# 4
BLOCK# 18587
BBED> set count 20
COUNT 20
##/v翻译内容
BBED> dump /v
File: /oracle/oradata/znjtepp/users01.dbf (4)
Block: 18587 Offsets: 0 to 19 Dba:0x0100489b
——————————————————-
23a20000 0100489b 0031fc19 00000104 l #…..H..1……
f8880000 l ….
<16 bytes per line>
##可以通过show ,info显示当前的设置情况
BBED> show
FILE# 4
BLOCK# 20
OFFSET 0
DBA 0x01000014 (16777236 4,20)
FILENAME /oracle/oradata/znjtepp/users01.dbf
BIFILE bifile.bbd
LISTFILE datafile.txt
BLOCKSIZE 8192
MODE Edit
EDIT Unrecoverable
IBASE Dec
OBASE Dec
WIDTH 100
COUNT 5000
LOGFILE log.bbd
SPOOL No
BBED> info
File# Name Size(blks)
—– —- ———-
1 /oracle/oradata/znjtepp/system01.dbf 101120
2 /oracle/oradata/znjtepp/XSPGIMS_DEVICE.dbf 473344
3 /oracle/oradata/znjtepp/sysaux01.dbf 62720
4 /oracle/oradata/znjtepp/users01.dbf 57760
5 /oracle/oradata/znjtepp/undotbs1.dbf 0
6 /oracle/oradata/znjtepp/XSPGIMS_FILE.dbf 406272
7 /oracle/oradata/znjtepp/XSPGIMS_FUEL.dbf 64000
8 /oracle/oradata/znjtepp/XSPGIMS_MATERIAL.dbf 64000
9 /oracle/oradata/znjtepp/XSPGIMS_PLAN.dbf 64000
10 /oracle/oradata/znjtepp/XSPGIMS_PRODUCE.dbf 288000
11 /oracle/oradata/znjtepp/XSPGIMS_SEQURITY.dbf 12800
12 /oracle/oradata/znjtepp/XSPGIMS_SYSTEM.dbf 115200
13 /oracle/oradata/znjtepp/XSPGIMS_OTHER.dbf 38400
14 /oracle/oradata/znjtepp/RIMS_DATA.dbf 25600
15 /oracle/oradata/znjtepp/XSPGIMS_MONITOR.dbf 38400
16 /oracle/oradata/znjtepp/XSPGIMS_HUMANRESOURCE.dbf 38400
……
############################find 命令###################################
map 命令
用于显示数据块的逻辑结构和这些逻辑结构的偏移量,一般配合/v参数使用
例
BBED> map /v dba 4,1
File: /oracle/oradata/LUDA/datafile/o1_mf_users_6zlksyqo_.dbf (4)
Block: 1 Dba:0x01000001
————————————————————
Data File Header
struct kcvfh, 676 bytes @0
struct kcvfhbfh, 20 bytes @0
struct kcvfhhdr, 76 bytes @20
ub4 kcvfhrdb @96
struct kcvfhcrs, 8 bytes @100
ub4 kcvfhcrt @108
……