[BBED]Oracle 11.2.0.4 Centos6.5下編譯bbed

梓沐發表於2016-02-15

Oracle環境:Oracle 11.2.0.4Centos6.5 x86-64bit

由於11g不提供bbed的編譯了,所以可以從相同平臺的10g中將下面三個檔案複製到11g

sbbdpt.ossbbded.o複製到$ORACLE_HOME/rdbms/lib中,bbedus.msb 複製到$ORACLE_HOME/rdbms/mesg

沒有以上3個檔案時,編譯時候報錯

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

Linking BBED utility (bbed)

rm -f /u01/oracle/product/11.2.0/db_1/rdbms/lib/bbed

gcc -o /u01/oracle/product/11.2.0/db_1/rdbms/lib/bbed -m64 -z noexecstack -L/u01/oracle/product/11.2.0/db_1/rdbms/lib/ -L/u01/oracle/product/11.2.0/db_1/lib/ -L/u01/oracle/product/11.2.0/db_1/lib/stubs/ /u01/oracle/product/11.2.0/db_1/lib/s0main.o

/u01/oracle/product/11.2.0/db_1/rdbms/lib/ssbbded.o /u01/oracle/product/11.2.0/db_1/rdbms/lib/sbbdpt.o

`cat /u01/oracle/product/11.2.0/db_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 -lclntsh `cat /u01/oracle/product/11.2.0/db_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/oracle/product/11.2.0/db_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnnz11 -lzt11 -lztkg11 -lclient11 -lnnetd11 -lvsn11 -lcommon11 -lgeneric11 -lmm -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 `cat /u01/oracle/product/11.2.0/db_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/oracle/product/11.2.0/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 /u01/oracle/product/11.2.0/db_1/lib/sysliblist` -Wl,-rpath,/u01/oracle/product/11.2.0/db_1/lib -lm `cat /u01/oracle/product/11.2.0/db_1/lib/sysliblist` -ldl -lm -L/u01/oracle/product/11.2.0/db_1/lib

gcc: /u01/oracle/product/11.2.0/db_1/rdbms/lib/ssbbded.o: No such file or directory

gcc: /u01/oracle/product/11.2.0/db_1/rdbms/lib/sbbdpt.o: No such file or directory

make: *** [/u01/oracle/product/11.2.0/db_1/rdbms/lib/bbed] Error 1

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


將上述3個檔案複製到對應目錄中,並注意相應許可權,再次編譯

[oracle@cancer lib]$ make -f ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed

Linking BBED utility (bbed)

rm -f /u01/oracle/product/11.2.0/db_1/bin/bbed

gcc -o /u01/oracle/product/11.2.0/db_1/bin/bbed -m64 -z noexecstack -L/u01/oracle/product/11.2.0/db_1/rdbms/lib/ -L/u01/oracle/product/11.2.0/db_1/lib/ -L/u01/oracle/product/11.2.0/db_1/lib/stubs/ /u01/oracle/product/11.2.0/db_1/lib/s0main.o

/u01/oracle/product/11.2.0/db_1/rdbms/lib/ssbbded.o /u01/oracle/product/11.2.0/db_1/rdbms/lib/sbbdpt.o

`cat /u01/oracle/product/11.2.0/db_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 -lclntsh `cat /u01/oracle/product/11.2.0/db_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/oracle/product/11.2.0/db_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnnz11 -lzt11 -lztkg11 -lclient11 -lnnetd11 -lvsn11 -lcommon11 -lgeneric11 -lmm -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 `cat /u01/oracle/product/11.2.0/db_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/oracle/product/11.2.0/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 /u01/oracle/product/11.2.0/db_1/lib/sysliblist` -Wl,-rpath,/u01/oracle/product/11.2.0/db_1/lib -lm `cat /u01/oracle/product/11.2.0/db_1/lib/sysliblist` -ldl -lm -L/u01/oracle/product/11.2.0/db_1/lib


使用bbed命令,預設密碼為:blockedit

[oracle@cancer lib]$ which bbed

/u01/oracle/product/11.2.0/db_1/bin/bbed

[oracle@cancer lib]$ bbed

Password:

BBED: Release 2.0.0.0.0 - Limited Production on Fri Oct 16 10:07:44 2015

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

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

BBED>


一般使用bbed,都是將一些配置資訊寫入到一個引數文字里,在呼叫bbed時,指定該引數檔案。如:

$bbedparfile=bbed.par


1)先獲取datafile 的資訊

datafile 的資訊寫入一個檔案,格式為:檔案編號 檔名字 檔案大小。可以透過如下SQL獲取:


SQL> select file#||' '||name||' '||bytes from v$datafile ;

FILE#||''||NAME||''||BYTES

--------------------------------------------------------------------------------

1 /u01/oracle/oradata/orcl/system01.dbf 807403520

2 /u01/oracle/oradata/orcl/sysaux01.dbf 870318080

3 /u01/oracle/oradata/orcl/undotbs01.dbf 225443840

4 /u01/oracle/oradata/orcl/users01.dbf 17039360

5 /u01/oracle/oradata/orcl/example01.dbf 363069440

注意,這裡的file id 我們這裡的file id oracle 系統內部的file id 相同。 當然這個id 我們也可以自己指定。 當我們在bbed 裡設定file id 時,就是根據這個引數檔案中的的設定來的。 最好設定為相同,不然以後可能會混淆。


將上面查詢出來的datafile資訊儲存到文字里。

[oracle@oracle ~]$ cat filelist.txt

1 /u01/oracle/oradata/orcl/system01.dbf 807403520

2 /u01/oracle/oradata/orcl/sysaux01.dbf 870318080

3 /u01/oracle/oradata/orcl/undotbs01.dbf 225443840

4 /u01/oracle/oradata/orcl/users01.dbf 17039360

5 /u01/oracle/oradata/orcl/example01.dbf 363069440


(2) 建立parameter file

[oracle@oracle ~]$ cat bbed.par

blocksize=8192

listfile=/home/oracle/filelist.txt

mode=edit


3)使用parameter file 連線bbed

[oracle@oracle ~]$ bbed parfile=/home/oracle/bbed.par

Password:

BBED: Release 2.0.0.0.0 - Limited Production on Mon Feb 27 14:54:32 2017

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

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

BBED> show

FILE# 1

BLOCK# 1

OFFSET 0

DBA 0x00400001 (4194305 1,1)

FILENAME /u01/oracle/oradata/orcl/system01.dbf

BIFILE bifile.bbd

LISTFILE /home/oracle/filelist.txt

BLOCKSIZE 8192

MODE Edit

EDIT Unrecoverable

IBASE Dec

OBASE Dec

WIDTH 80

COUNT 512

LOGFILE log.bbd

SPOOL No

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29812844/viewspace-1988809/,如需轉載,請註明出處,否則將追究法律責任。

相關文章