sys@PROD>conn tom/jack
tom@PROD>create table a08(id int,name varchar2(30)) tablespace tbs_test01;
insert into a08 values(1,'aaaaaa');
insert into a08 values(2,'bbbbbb');
insert into a08 values(3,'cccccc');
tom@PROD>select dbms_rowid.ROWID_RELATIVE_FNO(rowid) fid,dbms_rowid.ROWID_BLOCK_NUMBER(rowid) bid,id,name from a08;
FID BID ID NAME
---------- ---------- ---------- ------------------------------
5 666 1 aaaaaa
5 666 2 bbbbbb
5 666 3 cccccc
(数据在5号文件,666号块中)
col file_name for a30
select file_id,file_name,tablespace_name from dba_data_files;
FILE_ID FILE_NAME TABLESPACE_NAME
---------- ------------------------------ ------------------------------
1 /u01/disk1/system01.dbf SYSTEM
2 /u01/disk1/undotbs01.dbf UNDOTBS01
3 /u01/disk1/sysaux01.dbf SYSAUX
4 /u01/disk1/tbs_test01.dbf TBS_TEST01
5 /u01/disk1/tbs_test02.dbf TBS_TEST01
[oracle@ocmdb1 ~]$ cd $ORACLE_HOME
[oracle@ocmdb1 db_1]$ find . -name ins_rdbms.mk
./rdbms/lib/ins_rdbms.mk
make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed
[oracle@ocmdb1 lib]$ ll bbed
-rwxr-xr-x 1 oracle oinstall 536161 Jun 22 10:04 bbed
(密码:blockedit)
[oracle@ocmdb1 lib]$ ./bbed
Password:
BBED: Release 2.0.0.0.0 - Limited Production on Sun Jun 22 10:06:18 2014
Copyright (c) 1982, 2005, Oracle. All rights reserved.
************* !!! For Oracle Internal Use only !!! ***************
BBED>
#设置
help all
1、建list 文件
[oracle@ocmdb1 ~]$ echo > bbed.lit
2、SET LIST
BBED> SET LIST '/home/oracle/bbed.lit'
BBED-00303: unable to open file 'x
(忽略错误,通过show all 查看是否设置成功)
BBED> show all
FILE# 0
BLOCK# 1
OFFSET 0
DBA 0x00000000 (0 0,1)
FILENAME
BIFILE bifile.bbd
LISTFILE /home/oracle/bbed.lit
BLOCKSIZE 8192
MODE Browse
EDIT Unrecoverable
IBASE Dec
OBASE Dec
WIDTH 80
COUNT 512
LOGFILE log.bbd
SPOOL No
3、SET FILENAME
BBED> SET FILENAME '/u01/disk1/tbs_test02.dbf'
4、SET FILE
BBED> SET FILE 5
5、SET BLOCK
BBED> SET BLOCK 666
BBED> show all
FILE# 5
BLOCK# 666
OFFSET 0
DBA 0x0140029a (20972186 5,666)
FILENAME /u01/disk1/tbs_test02.dbf
BIFILE bifile.bbd
LISTFILE /home/oracle/bbed.lit
BLOCKSIZE 8192
MODE Browse
EDIT Unrecoverable
IBASE Dec
OBASE Dec
WIDTH 80
COUNT 512
LOGFILE log.bbd
SPOOL No
如果修改编辑模式
BBED> set MODE edit
MODE Edit
如果只是查看 保持browse
BBED> set COUNT 8192
COUNT 8192
BBED> dump
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 002c0102 02c10406 63636363
63632c01 0202c103 06626262 6262622c 010202c1 02066161 61616161 05068a7b
sys@PROD>select dump(id,16),dump(name,16) from tom.a08;
DUMP(ID,16)
-----------------
DUMP(NAME,16)
-----------------
Typ=2 Len=2: c1,2
Typ=1 Len=6: 61,61,61,61,61,61
Typ=2 Len=2: c1,3
Typ=1 Len=6: 62,62,62,62,62,62
Typ=2 Len=2: c1,4
Typ=1 Len=6: 63,63,63,63,63,63
sys@PROD>update tom.a08 set name='aaaaaaaa' where id=1;
1 row updated.
Elapsed: 00:00:00.02
sys@PROD>commit;
Commit complete.
Elapsed: 00:00:00.01
sys@PROD>alter system checkpoint;
System altered.
Elapsed: 00:00:00.03
>SET BLOCK 666
>dump
00000000 00002c02 0202c102 08616161 61616161 612c0002 02c10406 63636363
63632c00 0202c103 06626262 6262622c 000202c1 02066161 61616161 020666c1
BBED> find /c bbbbbb
File: /u01/disk1/tbs_test02.dbf (5)
Block: 666 Offsets: 8169 to 8191 Dba:0x0140029a
------------------------------------------------------------------------
62626262 62622c00 0202c102 06616161 61616102 0666c1
<32 bytes per line>
BBED> find /x 626262626262
BBED-00209: invalid number (626262626262)
#(32位机器 只能查找4个字节)
BBED> find /x 62626262
File: /u01/disk1/tbs_test02.dbf (5)
Block: 666 Offsets: 8169 to 8191 Dba:0x0140029a
------------------------------------------------------------------------
62626262 62622c00 0202c102 06616161 61616102 0666c1
<32 bytes per line>
BBED> modify /c EEEEEE offset 8169
File: /u01/disk1/tbs_test02.dbf (5)
Block: 666 Offsets: 8169 to 8191 Dba:0x0140029a
------------------------------------------------------------------------
45454545 45452c00 0202c102 06616161 61616102 0666c1
<32 bytes per line>
#find 会修改 offset值为查找的值,dump块头信息,还要重新set offset 0
BBED> set offset 0
OFFSET 0
BBED> dump
File: /u01/disk1/tbs_test02.dbf (5)
Block: 666 Offsets: 0 to 8191 Dba:0x0140029a
------------------------------------------------------------------------
06a20000 9a024001 66c10200 00000206 bcc00000 01000000 1c260000 64c10200
00000000 02003200 89024001 07002900 64000000 f8008000 1b002800 00800000
8a7b0200 01002f00 71000000 41028000 36002400 01200000 66c10200 00000000
00000000 00010300 ffff1800 621f571f 571f0000 0300621f 7e1f711f 00000000
#重新计算Check value
BBED> sum apply
Check value for File 5, Block 666:
current = 0xe79b, required = 0xe79b
BBED> dump
File: /u01/disk1/tbs_test02.dbf (5)
Block: 666 Offsets: 0 to 8191 Dba:0x0140029a
------------------------------------------------------------------------
06a20000 9a024001 66c10200 00000206 9be70000 01000000 1c260000 64c10200
00000000 02003200 89024001 07002900 64000000 f8008000 1b002800 00800000
8a7b0200 01002f00 71000000 41028000 36002400 01200000 66c10200 00000000
00000000 00010300 ffff1800 621f571f 571f0000 0300621f 7e1f711f 00000000
sys@PROD>alter system flush buffer_cache;
System altered.
Elapsed: 00:00:00.02
sys@PROD>select * from tom.a08;
ID NAME
---------- ------------------------------
1 aaaaaaaa
2 EEEEEE
3 cccccc
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22193071/viewspace-1195382/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/22193071/viewspace-1195382/