[转]Oracle 10g/11g编译上古神器BBED

本文介绍了如何在Oracle 10g和11g环境中编译BBED工具,包括必要的步骤和命令。BBED是一款Oracle内部使用的二进制编辑工具,可用于直接查看和修改数据文件。

BBED(Oracle Block Brower and EDitor Tool),用来直接查看和修改数据文件数据的一个工具,是Oracle一款内部工具,可以直接修改Oracle数据文件块的内容,简单来说就是一个针对Oracle的二进制编辑工具。该工具不受Oracle支持,所以默认是没有生成可执行文件的,在使用前需要重新编译。

 

在Oracle 10g中编译BBED

[oracle@mailserver ~]$ cd $ORACLE_HOME/rdbms/lib
[oracle@mailserver lib]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed

Linking BBED utility (bbed)
rm -f /u01/app/oracle/rdbms/lib/bbed
gcc -o /u01/app/oracle/rdbms/lib/bbed -L/u01/app/oracle/rdbms/lib/ -L/u01/app/oracle/lib/ -L/u01/app/oracle/lib/stubs/  /u01/app/oracle/lib/s0main.o /u01/app/oracle/rdbms/lib/ssbbded.o /u01/app/oracle/rdbms/lib/sbbdpt.o `cat /u01/app/oracle/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 /u01/app/oracle/rdbms/lib/defopt.o -ldbtools10 -lclntsh  `cat /u01/app/oracle/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /u01/app/oracle/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10 -lmm -lsnls10 -lnls10  -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 `cat /u01/app/oracle/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /u01/app/oracle/lib/ldflags`    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10   -lsnls10 -lnls10  -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 -lclient10 -lnnetd10  -lvsn10 -lcommon10 -lgeneric10 -lsnls10 -lnls10  -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10   `cat /u01/app/oracle/lib/sysliblist` -Wl,-rpath,/u01/app/oracle/lib -lm    `cat /u01/app/oracle/lib/sysliblist` -ldl -lm   -L/u01/app/oracle/lib
[oracle@mailserver lib]$ ls bbed 
bbed
[oracle@mailserver lib]$ link ./bbed $ORACLE_HOME/bin/bbed
[oracle@mailserver lib]$ bbed
Password: 

BBED: Release 2.0.0.0.0 - Limited Production on Fri Jun 25 11:24:54 2010

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

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

BBED> exit

 

在Oracle 11g中编译BBED

Oracle 11g编译BBED就麻烦一点,将Oracle 10g的ORACLE_HOME目录中的5个文件复制到Oracle 11g对应的目录中。

[oracle@mailserver ~]$ mkdir -p /tmp/bbed/lib/ 
[oracle@mailserver ~]$ mkdir -p /tmp/bbed/mesg/
[oracle@mailserver ~]$ cd $ORACLE_HOME
[oracle@mailserver oracle]$ cp ./rdbms/lib/ssbbded.o /tmp/bbed/lib/ 
[oracle@mailserver oracle]$ cp ./rdbms/lib/sbbdpt.o  /tmp/bbed/lib/
[oracle@mailserver oracle]$ cp ./rdbms/mesg/bbed
bbedus.msb   bbedus.msg   bbedzhs.msb  
[oracle@mailserver oracle]$ cp ./rdbms/mesg/bbed*    /tmp/bbed/mesg/

[ora11g@mailserver ~]$ cd $ORACLE_HOME
[ora11g@mailserver db_1]$ cp /tmp/bbed/lib/*   ./rdbms/lib/ 
[ora11g@mailserver db_1]$ cp /tmp/bbed/mesg/*  ./rdbms/mesg/

此时再进行编译:

[ora11g@mailserver ~]$ cd $ORACLE_HOME                   
[ora11g@mailserver db_1]$ make -f ./rdbms/lib/ins_rdbms.mk BBED=./bin/bbed ./bin/bbed 

Linking BBED utility (bbed)
rm -f bin/bbed
gcc -o bin/bbed -m64 -L/u11/app/oracle/11.2/db_1/rdbms/lib/ -L/u11/app/oracle/11.2/db_1/lib/ -L/u11/app/oracle/11.2/db_1/lib/stubs/  /u11/app/oracle/11.2/db_1/lib/s0main.o /u11/app/oracle/11.2/db_1/rdbms/lib/ssbbded.o /u11/app/oracle/11.2/db_1/rdbms/lib/sbbdpt.o `cat /u11/app/oracle/11.2/db_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 -lclntsh  `cat /u11/app/oracle/11.2/db_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u11/app/oracle/11.2/db_1/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 /u11/app/oracle/11.2/db_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u11/app/oracle/11.2/db_1/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 /u11/app/oracle/11.2/db_1/lib/sysliblist` -Wl,-rpath,/u11/app/oracle/11.2/db_1/lib -lm    `cat /u11/app/oracle/11.2/db_1/lib/sysliblist` -ldl -lm   -L/u11/app/oracle/11.2/db_1/lib
[ora11g@mailserver db_1]$ bbed 
Password: 

BBED: Release 2.0.0.0.0 - Limited Production on Fri Jun 25 11:44:05 2010

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

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

BBED> exit
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值