Oracle 11g 編譯使用BBED
環境:RHEL 6.4 + Oracle 11.2.0.4
- 1. 拷貝缺失檔案
- 2. 編譯BBED
- 3. BBED使用測試
- Reference
1. 拷貝缺失檔案
11g中缺失幾個相關檔案,但我們實際可以從10g拷貝相關檔案到11g對應目錄下:
$ORACLE_HOME/rdbms/lib/sbbdpt.o$ORACLE_HOME/rdbms/lib/ssbbded.o$ORACLE_HOME/rdbms/mesg/bbedus.msb$ORACLE_HOME/rdbms/mesg/bbedus.msg
2. 編譯BBED
make -f $ORACLE_HOME/rdbms/lib/ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed
成功編譯的結果如下:
[oracle@JY-DB01 dbhome_1]$ make -f $ORACLE_HOME/rdbms/lib/ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbedLinking BBED utility (bbed)rm -f /u02/app/oracle/product/11.2.0/dbhome_1/bin/bbedgcc -o /u02/app/oracle/product/11.2.0/dbhome_1/bin/bbed -m64 -z noexecstack -L/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ -L/u02/app/oracle/product/11.2.0/dbhome_1/lib/ -L/u02/app/oracle/product/11.2.0/dbhome_1/lib/stubs/ /u02/app/oracle/product/11.2.0/dbhome_1/lib/s0main.o /u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ssbbded.o /u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/sbbdpt.o `cat /u02/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 -lclntsh `cat /u02/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u02/app/oracle/product/11.2.0/dbhome_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 /u02/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u02/app/oracle/product/11.2.0/dbhome_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 /u02/app/oracle/product/11.2.0/dbhome_1/lib/sysliblist` -Wl,-rpath,/u02/app/oracle/product/11.2.0/dbhome_1/lib -lm `cat /u02/app/oracle/product/11.2.0/dbhome_1/lib/sysliblist` -ldl -lm -L/u02/app/oracle/product/11.2.0/dbhome_1/lib
3. BBED使用測試
--3.1 bbed命令測試可用[oracle@JY-DB01 dbhome_1]$ bbedPassword: --密碼預設是blockeditBBED: Release 2.0.0.0.0 - Limited Production on Mon Jan 18 15:13:09 2016Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.************* !!! For Oracle Internal Use only !!! ***************BBED> help allSET DBA [ dba | file#, block# ]SET FILENAME 'filename'SET FILE file#SET BLOCK [+/-]block#SET OFFSET [ [+/-]byte offset | symbol | *symbol ]SET BLOCKSIZE bytesSET LIST[FILE] 'filename'SET WIDTH character_countSET COUNT bytes_to_displaySET IBASE [ HEX | OCT | DEC ]SET OBASE [ HEX | OCT | DEC ]SET MODE [ BROWSE | EDIT ]SET SPOOL [ Y | N ]SHOW [ <SET parameter> | ALL ]INFOMAP[/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 rowf - 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 rowidFIND[/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 | <target spec options> ]SUM [ DBA | FILE | FILENAME | BLOCK ] [ APPLY ]PUSH [ DBA | FILE | FILENAME | BLOCK | OFFSET ]POP [ALL]REVERT [ DBA | FILE | FILENAME | BLOCK ]UNDOHELP [ <bbed command> | ALL ]VERIFY [ DBA | FILE | FILENAME | BLOCK ]CORRUPT [ DBA | FILE | FILENAME | BLOCK ]BBED> --3.2 bbed命令參數[oracle@JY-DB01 tmp]$ bbed help=yPASSWORD - Required parameterFILENAME - Database file nameBLOCKSIZE - Database block sizeLISTFILE - List file nameMODE - [browse/edit]SPOOL - Spool to logfile [no/yes]CMDFILE - BBED command file nameLOGFILE - BBED log file namePARFILE - Parameter file nameBIFILE - BBED before-image file nameREVERT - Rollback changes from BIFILE [no/yes]SILENT - Hide banner [no/yes]HELP - Show all valid parameters [no/yes]
另外,一般使用bbed都是在參數設定檔中寫好配置參數,然後直接調用設定檔,比如:
--編輯/tmp/bbed.par參數設定檔blocksize=8192listfile=/tmp/listfile.txtmode=edit--編輯/tmp/listfile.txt檔案 5 /u02/oradata/jingyu/dbs_d_jingyu01.dbf 314572806 /u02/oradata/jingyu/dbs_i_jingyu01.dbf 31457280--調用bbedcd /tmpbbed parfile=bbed.par