首页 > 代码库 > Installing Oracle Block Browser and Editor tool (bbed)

Installing Oracle Block Browser and Editor tool (bbed)

BBED是ORACLE的内部工具,通常使用BBED都是恢复一些故障的数据库,比如断电或异常关闭操作系统导致的数据文件头不一致、SYSTEM表空间损坏等故障就可以使用BBED工具进行恢复。
在11G中编译通常会报如下错误:
[oracle@ogg1 lib]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed


Linking BBED utility (bbed)
rm -f /opt/oracle/products/11.2.0/rdbms/lib/bbed
gcc -o /opt/oracle/products/11.2.0/rdbms/lib/bbed -m64 -L/opt/oracle/products/11.2.0/rdbms/lib/ -L/opt/oracle/products/11.2.0/lib/ -L/opt/oracle/products/11.2.0/lib/stubs/  /opt/oracle/products/11.2.0/lib/s0main.o /opt/oracle/products/11.2.0/rdbms/lib/ssbbded.o /opt/oracle/products/11.2.0/rdbms/lib/sbbdpt.o `cat /opt/oracle/products/11.2.0/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 -lclntsh  `cat /opt/oracle/products/11.2.0/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /opt/oracle/products/11.2.0/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnnz11 -lzt11 -lztkg11 -lztkg11 -lclient11 -lnnetd11  -lvsn11 -lcommon11 -lgeneric11 -lmm -lsnls11 -lnls11  -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 `cat /opt/oracle/products/11.2.0/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /opt/oracle/products/11.2.0/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lclient11 -lnnetd11  -lvsn11 -lcommon11 -lgeneric11   -lsnls11 -lnls11  -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 -lclient11 -lnnetd11  -lvsn11 -lcommon11 -lgeneric11 -lsnls11 -lnls11  -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11   `cat /opt/oracle/products/11.2.0/lib/sysliblist` -Wl,-rpath,/opt/oracle/products/11.2.0/lib -lm    `cat /opt/oracle/products/11.2.0/lib/sysliblist` -ldl -lm   -L/opt/oracle/products/11.2.0/lib
gcc: /opt/oracle/products/11.2.0/rdbms/lib/ssbbded.o: No such file or directory
gcc: /opt/oracle/products/11.2.0/rdbms/lib/sbbdpt.o: No such file or directory
make: *** [/opt/oracle/products/11.2.0/rdbms/lib/bbed] Error 1


是因为缺少对应的库文件,不过我们可以从10G当中拷过来:

[oracle@zbdba3 lib]$ ls *sbb*

sbbdpt.o  ssbbded.o

[oracle@zbdba3 lib]$ scp *sbb* 192.168.56.12:`pwd`

The authenticity of host ‘192.168.56.12 (192.168.56.12)‘ can‘t be established.

RSA key fingerprint is de:78:11:e4:45:be:48:83:50:5f:c8:6e:08:ad:ae:7e.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added ‘192.168.56.12‘ (RSA) to the list of known hosts.

oracle@192.168.56.12‘s password:

scp: /u01/app/oracle/product/10.2.0/db_1/rdbms/lib: No such file or directory

[oracle@zbdba3 lib]$ scp *sbb* 192.168.56.12:/opt/oracle/products/11.2.0/rdbms/lib

oracle@192.168.56.12‘s password:

sbbdpt.o                                                                                                                             100% 1863     1.8KB/s   00:00   

ssbbded.o                                                                                                                            100% 1191     1.2KB/s   00:00

[oracle@zbdba3 mesg]$ scp *bbed* 192.168.56.12:/opt/oracle/products/11.2.0/rdbms/mesg
oracle@192.168.56.12‘s password: 
bbedus.msb                                                                                                                           100% 8704     8.5KB/s   00:00    
bbedus.msg                                                                                                                           100%   10KB  10.0KB/s   00:00




重新编译:
[oracle@ogg1 lib]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed


Linking BBED utility (bbed)
rm -f /opt/oracle/products/11.2.0/rdbms/lib/bbed
gcc -o /opt/oracle/products/11.2.0/rdbms/lib/bbed -m64 -L/opt/oracle/products/11.2.0/rdbms/lib/ -L/opt/oracle/products/11.2.0/lib/ -L/opt/oracle/products/11.2.0/lib/stubs/  /opt/oracle/products/11.2.0/lib/s0main.o /opt/oracle/products/11.2.0/rdbms/lib/ssbbded.o /opt/oracle/products/11.2.0/rdbms/lib/sbbdpt.o `cat /opt/oracle/products/11.2.0/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 -lclntsh  `cat /opt/oracle/products/11.2.0/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /opt/oracle/products/11.2.0/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnnz11 -lzt11 -lztkg11 -lztkg11 -lclient11 -lnnetd11  -lvsn11 -lcommon11 -lgeneric11 -lmm -lsnls11 -lnls11  -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 `cat /opt/oracle/products/11.2.0/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /opt/oracle/products/11.2.0/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lclient11 -lnnetd11  -lvsn11 -lcommon11 -lgeneric11   -lsnls11 -lnls11  -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 -lclient11 -lnnetd11  -lvsn11 -lcommon11 -lgeneric11 -lsnls11 -lnls11  -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11   `cat /opt/oracle/products/11.2.0/lib/sysliblist` -Wl,-rpath,/opt/oracle/products/11.2.0/lib -lm    `cat /opt/oracle/products/11.2.0/lib/sysliblist` -ldl -lm   -L/opt/oracle/products/11.2.0/lib
[oracle@ogg1 lib]$ ls -l bbed
-rwxr-xr-x 1 oracle oinstall 262144 Sep  4 03:46 bbed




[oracle@ogg1 mesg]$ bbed
Password: blockedit


BBED: Release 2.0.0.0.0 - Limited Production on Thu Sep 4 03:54:08 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

************* !!! For Oracle Internal Use only !!! ***************

BBED> help all
SET DBA [ dba | file#, block# ]
SET FILENAME ‘filename‘
SET FILE file#
SET BLOCK [+/-]block#
SET OFFSET [ [+/-]byte offset | symbol | *symbol ]
SET BLOCKSIZE bytes
SET LIST[FILE] ‘filename‘
SET WIDTH character_count
SET COUNT bytes_to_display
SET IBASE [ HEX | OCT | DEC ]
SET OBASE [ HEX | OCT | DEC ]
SET MODE  [ BROWSE | EDIT ]
SET SPOOL [ Y | N ]
SHOW [ | ALL ]
INFO
MAP[/v] [ DBA | FILENAME | FILE | BLOCK ]
DUMP[/v] [ DBA | FILENAME | FILE | BLOCK | OFFSET | COUNT ]
PRINT[/x|d|u|o|c] [ DBA | FILE | FILENAME | BLOCK | OFFSET | symbol | *symbol ]
EXAMINE[/Nuf] [ DBA | FILE | FILENAME | BLOCK | OFFSET | symbol | *symbol ]
</Nuf>:
N - a number which specifies a repeat count.
u - a letter which specifies a unit size:
  b - b1, ub1 (byte)
  h - b2, ub2 (half-word)
  w - b4, ub4(word)
  r - Oracle table/index row
f - a letter which specifies a display format:
  x - hexadecimal
  d - decimal
  u - unsigned decimal
  o - octal
  c - character (native)
  n - Oracle number
  t - Oracle date
  i - Oracle rowid
FIND[/x|d|u|o|c] numeric/character string [ TOP | CURR ]
COPY [ DBA | FILE | FILENAME | BLOCK ] TO [ DBA | FILE | FILENAME | BLOCK ]
MODIFY[/x|d|u|o|c] numeric/character string
      [ DBA | FILE | FILENAME | BLOCK | OFFSET | symbol | *symbol ]
ASSIGN[/x|d|u|o] <target spec>=<source spec>
<target spec> : [ DBA | FILE | FILENAME | BLOCK | OFFSET | symbol | *symbol ]
<source spec> : [ value | ]
SUM [ DBA | FILE | FILENAME | BLOCK ] [ APPLY ]
PUSH [ DBA | FILE | FILENAME | BLOCK | OFFSET ]
POP [ALL]
REVERT [ DBA | FILE | FILENAME | BLOCK ]
UNDO
HELP [ | ALL ]
VERIFY [ DBA | FILE | FILENAME | BLOCK ]
CORRUPT [ DBA | FILE | FILENAME | BLOCK ]

BBED> 


for more information:


Installing Oracle Block Browser and Editor tool (bbed)