我是靠谱客的博主 痴情河马,这篇文章主要介绍BBED使用,现在分享给大家,希望可以做个参考。

BBED是oracle内部使用的工具,9i,10g默认是自带的,只要编译一下就可以使用了。

下面我就来编译一下BBED并且用它来修改下数据:

复制代码
1
2
3
[oracle@Srv02 ~]$ cd $ORACLE_HOME/rdbms/lib [oracle@Srv02 lib]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed [oracle@Srv02 lib]$ cp $ORACLE_HOME/rdbms/lib/bbed /u01/app/oracle/product/db_1/bin/

 

做如上操作后我们就可以直接在任何路径下面使用BBED了。

下面我使用BBED来修改数据:

1.首先创建个表并插入两条数据,并查看它的ROWID:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
SQL> create table t1(id number,name varchar2(10)); Table created. SQL> insert into t1 values(1,'xuwu'); 1 row created. SQL> insert into t1 values(2,'xmj'); 1 row created. SQL> insert into t1 values(3,'xnk'); 1 row created. SQL> commit; Commit complete. SQL> select * from t1; ID NAME ---------- ---------- 1 xuwu 2 xmj 3 xnk SQL> select rowid,dbms_rowid.rowid_relative_fno(rowid) rel_fno,dbms_rowid.rowid_block_number(rowid) blockno, 2 dbms_rowid.rowid_row_number(rowid) rowno from t1; ROWID REL_FNO BLOCKNO ROWNO ------------------ ---------- ---------- ---------- AAAW9mAABAAAOYiAAA 1 58914 0 AAAW9mAABAAAOYiAAB 1 58914 1 AAAW9mAABAAAOYiAAC 1 58914 2 SQL>

查出listfile

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
SQL> select file#||' '||name||' '||bytes from v$datafile; FILE#||''||NAME||''||BYTES -------------------------------------------------------------------------------- 1 /u01/app/oracle/oradata/qxptfh01/system01.dbf 503316480 2 /u01/app/oracle/oradata/qxptfh01/undotbs01.dbf 1289748480 3 /u01/app/oracle/oradata/qxptfh01/sysaux01.dbf 429916160 4 /u01/app/oracle/oradata/qxptfh01/users01.dbf 5242880 5 /u01/app/oracle/oradata/qxptfh01/QXDATA01.dbf 524288000 6 /u01/app/oracle/oradata/qxptfh01/QXDATA02.dbf 11639193600 7 /backup/xuwu_tbs.dbf 10737418240 7 rows selected.

把上面查出来的内容放到listfile.txt文件中:

复制代码
1
2
3
4
5
6
7
8
9
10
11
[oracle@Srv02 ~]$ cat listfile.txt 1 /u01/app/oracle/oradata/qxptfh01/system01.dbf 503316480 2 /u01/app/oracle/oradata/qxptfh01/undotbs01.dbf 1289748480 3 /u01/app/oracle/oradata/qxptfh01/sysaux01.dbf 429916160 4 /u01/app/oracle/oradata/qxptfh01/users01.dbf 5242880 5 /u01/app/oracle/oradata/qxptfh01/QXDATA01.dbf 524288000 6 /u01/app/oracle/oradata/qxptfh01/QXDATA02.dbf 11639193600 7 /backup/xuwu_tbs.dbf 10737418240 [oracle@Srv02 ~]$ pwd /home/oracle [oracle@Srv02 ~]$

现在就可以登录BBED了:

复制代码
1
2
3
4
5
6
7
8
9
10
11
[oracle@Srv02 ~]$ bbed password=blockedit blocksize=8192 listfile=/home/oracle/listfile.txt mode=edit BBED: Release 2.0.0.0.0 - Limited Production on Thu Nov 27 15:05:11 2014 Copyright (c) 1982, 2007, Oracle. All rights reserved. ************* !!! For Oracle Internal Use only !!! *************** BBED> BBED> BBED>

下面开始修改数据:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
BBED> set dba 1,58914 DBA 0x0040e622 (4253218 1,58914) BBED> find /c xuwu File: /u01/app/oracle/oradata/qxptfh01/system01.dbf (1) Block: 58914 Offsets: 8184 to 8191 Dba:0x0040e622 ------------------------------------------------------------------------ 78757775 070670b4 <32 bytes per line> BBED> dump /v dba 1,58914 offset 8184 count 4 File: /u01/app/oracle/oradata/qxptfh01/system01.dbf (1) Block: 58914 Offsets: 8184 to 8187 Dba:0x0040e622 ------------------------------------------------------- 78757775 l xuwu <16 bytes per line> BBED> modify /c 'hehe' dba 1,58914 offset 8184 File: /u01/app/oracle/oradata/qxptfh01/system01.dbf (1) Block: 58914 Offsets: 8184 to 8187 Dba:0x0040e622 ------------------------------------------------------------------------ 68656865 <32 bytes per line> BBED> dump /v dba 1,58914 offset 8184 count 4 File: /u01/app/oracle/oradata/qxptfh01/system01.dbf (1) Block: 58914 Offsets: 8184 to 8187 Dba:0x0040e622 ------------------------------------------------------- 68656865 l hehe <16 bytes per line> BBED> sum apply Check value for File 1, Block 58914: current = 0x153c, required = 0x153c BBED> verify DBVERIFY - Verification starting FILE = /u01/app/oracle/oradata/qxptfh01/system01.dbf BLOCK = 58914 DBVERIFY - Verification complete Total Blocks Examined : 1 Total Blocks Processed (Data) : 1 Total Blocks Failing (Data) : 0 Total Blocks Processed (Index): 0 Total Blocks Failing (Index): 0 Total Blocks Empty : 0 Total Blocks Marked Corrupt : 0 Total Blocks Influx : 0 BBED> exit [oracle@Srv02 ~]$ sqlplus / as sysdba [uniread] Loaded history (799 lines) SQL*Plus: Release 10.2.0.5.0 - Production on Thu Nov 27 15:09:25 2014 Copyright (c) 1982, 2010, Oracle. All Rights Reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select * from t1; ID NAME ---------- ---------- 1 xuwu 2 xmj 3 xnk SQL> alter system flush buffer_cache; System altered. SQL> select * from t1; ID NAME ---------- ---------- 1 hehe 2 xmj 3 xnk SQL>

转载于:https://blog.51cto.com/xumingjiang/1583254

最后

以上就是痴情河马最近收集整理的关于BBED使用的全部内容,更多相关BBED使用内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(111)

评论列表共有 0 条评论

立即
投稿
返回
顶部