11g以下版本可以直接编译使用,11g及以后需要从相应平台的10g中拷贝4个文件到11g相应目录,如下,bbedar.msb可以不用拷贝。然后执行编译命令即可,编译的bbed命令可以直接生成在$ORACLE_HOME/bin下,命令为:make -f $ORACLE_HOME/rdbms/lib/ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed
$ORACLE_HOME/rdbms/lib/ssbbded.o
$ORACLE_HOME/rdbms/lib/sbbdpt.o
$ORACLE_HOME/rdbms/mesg/bbedus.msb
$ORACLE_HOME/rdbms/mesg/bbedus.msg
$ORACLE_HOME/rdbms/mesg/bbedar.msb
1 我的一个编译例子
oracle@ZTGXPADDB1:/oracle$ ls -l $ORACLE_HOME/rdbms/lib/*sbbd*
-rw-r--r-- 1 oracle dba 1671 May 26 2010 /oracle/app/oracle/product/10.2.0/db/rdbms/lib/sbbdpt.o
-rw-r--r-- 1 oracle dba 900 May 26 2010 /oracle/app/oracle/product/10.2.0/db/rdbms/lib/ssbbded.o
oracle@ZTGXPADDB1:/oracle$ ls -l $ORACLE_HOME/rdbms/mesg/bbed*
-rw-r--r-- 1 oracle dba 8704 May 27 2010 /oracle/app/oracle/product/10.2.0/db/rdbms/mesg/bbedus.msb
-rw-r--r-- 1 oracle dba 10270 Jul 25 2000 /oracle/app/oracle/product/10.2.0/db/rdbms/mesg/bbedus.msg
oracle@ZTGXPADDB1:/oracle$
oracle@ZTGXPADDB1:/oracle$ scp $ORACLE_HOME/rdbms/lib/*sbbd* oracle@22.188.194.64:/oracle/app/oracle/product/11.2.0/db/rdbms/lib/
The authenticity of host '22.188.194.64 (22.188.194.64)' can't be established.
RSA key fingerprint is 17:0d:6f:34:a8:0b:15:20:ca:ab:35:83:58:bb:aa:4f.
Are you sure you want to continue connecting (yes/no)?yes
Warning: Permanently added '22.188.194.64' (RSA) to the list of known hosts.
************************************************************
* *
* *
* ATTENTION:You have logged onto a secured server. *
* *
* All accesses logged! *
* *
* *
************************************************************
oracle@22.188.194.64's password:
sbbdpt.o 100% 1671 1.6KB/s 00:00
ssbbded.o 100% 900 0.9KB/s 00:00
oracle@ZTGXPADDB1:/oracle$ scp $ORACLE_HOME/rdbms/mesg/bbed* oracle@22.188.194.64:/oracle/app/oracle/product/11.2.0/db/rdbms/mesg/
************************************************************
* *
* *
* ATTENTION:You have logged onto a secured server. *
* *
* All accesses logged! *
* *
* *
************************************************************
oracle@22.188.194.64's password:
bbedus.msb 100% 8704 8.5KB/s 00:00
bbedus.msg 100% 10KB 10.0KB/s 00:00
oracle@ZTGXPADDB1:/oracle$
[oracle@ZFFR4CB1101:/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib]$ cd $ORACLE_HOME/rdbms/lib
[oracle@ZFFR4CB1101:/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed
Linking BBED utility (bbed)
rm -f /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/bbed
ld -b64 -o /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/bbed -L/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ -L/u01/app/oracle/product/11.2.0/dbhome_1/lib/ /u01/app/oracle/product/11.2.0/dbhome_1/lib/s0main.o /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ssbbded.o /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/sbbdpt.o -bI:/usr/lib/aio.exp `cat /u01/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 `cat /u01/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/app/oracle/product/11.2.0/dbhome_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 /u01/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lclient11 -lnnetd11 -lvsn11 -lcommon11 -lgeneric11 -lpls11 -lrt -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 -lld -lm `cat /u01/app/oracle/product/11.2.0/dbhome_1/lib/sysliblist` -lm -lsql11 /u01/app/oracle/product/11.2.0/dbhome_1/lib/nautab.o /u01/app/oracle/product/11.2.0/dbhome_1/lib/naeet.o /u01/app/oracle/product/11.2.0/dbhome_1/lib/naect.o /u01/app/oracle/product/11.2.0/dbhome_1/lib/naedhs.o
ld: 0711-224 WARNING: Duplicate symbol: .aio_nwait_timeout64
ld: 0711-224 WARNING: Duplicate symbol: aio_nwait_timeout64
ld: 0711-224 WARNING: Duplicate symbol: .aio_nwait64
ld: 0711-224 WARNING: Duplicate symbol: aio_nwait64
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
ld: 0711-773 WARNING: Object /u01/app/oracle/product/11.2.0/dbhome_1/lib//libgeneric11.a[sdbgrfu.o], imported symbol timezone
Symbol was expected to be local. Extra instructions
are being generated to reference the symbol.
[oracle@ZFFR4CB1101:/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib]$
[oracle@ZFFR4CB1101:/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib]$ bbed
Password:
BBED: Release 2.0.0.0.0 - Limited Production on Wed Mar 23 11:12:18 2016
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
************* !!! For Oracle Internal Use only !!! ***************
BBED>
2 我的命令
ls -l $ORACLE_HOME/rdbms/lib/*sbbd*
ls -l $ORACLE_HOME/rdbms/mesg/bbed*
chown oracle:dba /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/*sbbd*
chown oracle:dba /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/mesg/bbed*
--cd $ORACLE_HOME/rdbms/lib
--make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed
--make -f $ORACLE_HOME/rdbms/lib/ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed
make -f $ORACLE_HOME/rdbms/lib/ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed
3、使用BBED
一般使用bbed,都是将一些配置信息写入到一个参数文本里,在调用bbed时,指定该参数文件。如:
$bbed parfile=bbed.par
bbed help=y
这里我们先演示一个示例。
(1)先获取datafile 的信息
将datafile 的信息写入一个文件,格式为:文件编号 文件名字 文件大小。可以通过如下SQL 获取:
set line 9999 pagesize 9999
select file#||' '||name||' '||bytes from v$datafile;
注意,这里的file id。 我们这里的file id 和 oracle 系统内部的file id 相同。 当然这个id 我们也可以自己指定。 当我们在bbed 里设置file id 时,就是根据这个参数文件中的的设置来的。 最好设置为相同,不然以后可能会混淆。
将上面查询出来的datafile信息保存到文本里。
cd /home/oracle
vi file.txt
1 /u01/app/oracle/oradata/PROD/disk3/system01.dbf 340787200
2 /u01/app/oracle/oradata/PROD/disk4/sysaux01.dbf 340787200
3 /u01/app/oracle/oradata/PROD/disk5/undotbs01.dbf 209715200
4 /u01/app/oracle/oradata/PROD/disk3/users01.dbf 524288000
5 /u01/app/oracle/oradata/PROD/disk3/cuug01.dbf 52428800
vi bbed.par
blocksize=8192
listfile=/home/oracle/file.txt
mode=edit
source /home/oracle/.bash_profile
bbed parfile=/home/oracle/bbed.par
blockedit
BBED是Oracle 内部使用的命令,所以Oracle 不提供技术支持。 为了安全,BBED设置了口令保护,默认密码为blockedit。
show
如果没有设置参数文件,显示: