Oracle 之BBED 工具介绍

来源:互联网 发布:阿里云二级域名 端口 编辑:程序博客网 时间:2024/05/16 01:36
BBED(Oracle Block Brower and EDitor Tool),用来直接查看和修改数据文件数据的一个工具,是Oracle一款内部工具,可以直接修改Oracle数据文件块的内容,在一些极端恢复场景下比较有用。该工具不受Oracle支持,所以默认是没有生成可执行文件的,在使用前需要重新连接。
1.BBED 安装
a)copy文件
11g中缺省的未提供BBED库文件,但是可以用10g的文件编译出来,需要先从10g中复制如下文件到相应目录
bbedus.msb 复制到$ORACLE_HOME/rdbms/mesg
sbbdpt.o ssbbded.o 复制到$ORACLE_HOME/rdbms/lib
b)编译:
ocrl:/u01/app/oracle/product/12.1.0/db_1/rdbms/lib@oracle1>make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed
Linking BBED utility (bbed)
rm -f /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/bbed
/u01/app/oracle/product/12.1.0/db_1/bin/orald -o /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/bbed -m64 -z noexecstack -Wl,--disable-new-dtags -L/u01/app/oracle/product/12.1.0/db_1/rdbms/lib/ -L/u01/app/oracle/product/12.1.0/db_1/lib/ -L/u01/app/oracle/product/12.1.0/db_1/lib/stubs/  /u01/app/oracle/product/12.1.0/db_1/lib/s0main.o /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/ssbbded.o /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/sbbdpt.o `cat /u01/app/oracle/product/12.1.0/db_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -ldbtools12 -lclntsh -lclntshcore  `cat /u01/app/oracle/product/12.1.0/db_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnro12 `cat /u01/app/oracle/product/12.1.0/db_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnnz12 -lzt12 -lztkg12 -lztkg12 -lclient12 -lnnetd12  -lvsn12 -lcommon12 -lgeneric12 -lmm -lsnls12 -lnls12  -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 `cat /u01/app/oracle/product/12.1.0/db_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnro12 `cat /u01/app/oracle/product/12.1.0/db_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lclient12 -lnnetd12  -lvsn12 -lcommon12 -lgeneric12   -lsnls12 -lnls12  -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 -lclient12 -lnnetd12  -lvsn12 -lcommon12 -lgeneric12 -lsnls12 -lnls12  -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12   `cat /u01/app/oracle/product/12.1.0/db_1/lib/sysliblist` -Wl,-rpath,/u01/app/oracle/product/12.1.0/db_1/lib -lm    `cat /u01/app/oracle/product/12.1.0/db_1/lib/sysliblist` -ldl -lm   -L/u01/app/oracle/product/12.1.0/db_1/lib
c)然后复制到bin下即可
ocrl:/u01/app/oracle/product/12.1.0/db_1/rdbms/lib@oracle1>cp bbed /u01/app/oracle/product/12.1.0/db_1/bin/
测试:
BBED是Oracle 内部使用的命令,所以Oracle 不提供技术支持。 为了安全BBED设置了口令保护,默认密码为blockedit。
ocrl:/u01/app/oracle/product/12.1.0/db_1/rdbms/lib@oracle1>bbed
Password:
BBED: Release 2.0.0.0.0 - Limited Production on Tue Feb 21 11:27:50 2017
Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.
************* !!! For Oracle Internal Use only !!! ***************
BBED> show    
 FILE#           0
 BLOCK#          1
 OFFSET          0
 DBA             0x00000000 (0 0,1)
 FILENAME        
 BIFILE          bifile.bbd
 LISTFILE        
 BLOCKSIZE       8192
 MODE            Browse
 EDIT            Unrecoverable
 IBASE           Dec
 OBASE           Dec
 WIDTH           80
 COUNT           512
 LOGFILE         log.bbd
 SPOOL           No
BBED> set filename '/data/oradata/ocrl/datafile/test.dbf'
 FILENAME        /data/oradata/ocrl/datafile/test.dbf
BBED> show
 FILE#           0
 BLOCK#          1
 OFFSET          0
 DBA             0x00000000 (0 0,1)
 FILENAME        /data/oradata/ocrl/datafile/test.dbf
 BIFILE          bifile.bbd
 LISTFILE        
 BLOCKSIZE       8192
 MODE            Browse
 EDIT            Unrecoverable
 IBASE           Dec
 OBASE           Dec
 WIDTH           80
 COUNT           512
 LOGFILE         log.bbd
 SPOOL           No
BBED>
 
以上如有不正确的地方,还请指正。欢迎加入Oracle QQ讨论群:425614362
1 0