ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle 11g下bbed工具的编译

oracle 11g下bbed工具的编译

原创 Linux操作系统 作者:db-guru 时间:2010-12-05 21:05:55 1 删除 编辑

       bbed是oracle提供数据块查看和编辑工具,在一些特定的场合如ORA-600 【4000】等故障处理的时候起到立竿见影的效果,当然这个工具在默认情况下oracle并没有提供,需要我们手动去编译,另外这个工具在使用的过程中具有很大的风险性,需要对内核数据结构有着深刻的理解,否则出问题oracle公司可是不负责的哦:)

      oracle在10g之前可以很轻松的使用make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed来链接生成bbed工具,但是在11g中,链接使用该工具会有一点点的小麻烦,一下就是我在11g下链接bbed工具的过程,仅供参考

oracle@ocp11g:/u01/app/oracle/product/11.2.0/db/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/db/rdbms/lib/bbed
gcc -o /u01/app/oracle/product/11.2.0/db/rdbms/lib/bbed -m64 -L/u01/app/oracle/product/11.2.0/db/rdbms/lib/ -L/u01/app/oracle/product/11.2.0/db/lib/ -L/u01/app/oracle/product/11.2.0/db/lib/stubs/  /u01/app/oracle/product/11.2.0/db/lib/s0main.o /u01/app/oracle/product/11.2.0/db/rdbms/lib/ssbbded.o /u01/app/oracle/product/11.2.0/db/rdbms/lib/sbbdpt.o `cat /u01/app/oracle/product/11.2.0/db/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 -lclntsh  `cat /u01/app/oracle/product/11.2.0/db/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/app/oracle/product/11.2.0/db/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/db/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/app/oracle/product/11.2.0/db/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/app/oracle/product/11.2.0/db/lib/sysliblist` -Wl,-rpath,/u01/app/oracle/product/11.2.0/db/lib -lm    `cat /u01/app/oracle/product/11.2.0/db/lib/sysliblist` -ldl -lm   -L/u01/app/oracle/product/11.2.0/db/lib
gcc: /u01/app/oracle/product/11.2.0/db/rdbms/lib/ssbbded.o: No such file or directory
gcc: /u01/app/oracle/product/11.2.0/db/rdbms/lib/sbbdpt.o: No such file or directory
make: *** [/u01/app/oracle/product/11.2.0/db/rdbms/lib/bbed] Error 1

会发现有两个链接库无法找到,需要在从同类型的其他版本的数据库拷贝过来

oracle@ocm1:/home/oracle/product/10gr2/db/rdbms/lib$ scp *bb* oracle@10.40.4.50:/home/oracle
The authenticity of host '10.40.4.50 (10.40.4.50)' can't be established.
RSA key fingerprint is 94:8f:e8:76:4d:ad:ee:fe:8b:59:96:4f:5e:da:5e:1d.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.40.4.50' (RSA) to the list of known hosts.
oracle@10.XX.X.YY's password:
sbbdpt.o                                                                                          100% 1863     1.8KB/s   00:00   
ssbbded.o                                                                                         100% 1191     1.2KB/s   00:00   

oracle@ocp11g:/u01/app/oracle/product/11.2.0/db/rdbms/lib$ cd
oracle@ocp11g:/home/oracle$ ls
Desktop  orabak  oradata  oradiag_oracle  oraInventory  sbbdpt.o  ssbbded.o
oracle@ocp11g:/home/oracle$ cp *bb* $ORACLE_HOME/rdbms/lib
oracle@ocp11g:/home/oracle$
oracle@ocp11g:/home/oracle$
oracle@ocp11g:/home/oracle$ cd $ORACLE_HOME/rdbms/lib
oracle@ocp11g:/u01/app/oracle/product/11.2.0/db/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/db/rdbms/lib/bbed
gcc -o /u01/app/oracle/product/11.2.0/db/rdbms/lib/bbed -m64 -L/u01/app/oracle/product/11.2.0/db/rdbms/lib/ -L/u01/app/oracle/product/11.2.0/db/lib/ -L/u01/app/oracle/product/11.2.0/db/lib/stubs/  /u01/app/oracle/product/11.2.0/db/lib/s0main.o /u01/app/oracle/product/11.2.0/db/rdbms/lib/ssbbded.o /u01/app/oracle/product/11.2.0/db/rdbms/lib/sbbdpt.o `cat /u01/app/oracle/product/11.2.0/db/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 -lclntsh  `cat /u01/app/oracle/product/11.2.0/db/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/app/oracle/product/11.2.0/db/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/db/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/app/oracle/product/11.2.0/db/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/app/oracle/product/11.2.0/db/lib/sysliblist` -Wl,-rpath,/u01/app/oracle/product/11.2.0/db/lib -lm    `cat /u01/app/oracle/product/11.2.0/db/lib/sysliblist` -ldl -lm   -L/u01/app/oracle/product/11.2.0/db/lib
oracle@ocp11g:/u01/app/oracle/product/11.2.0/db/rdbms/lib$ ls -l bbed
-rwxr-xr-x 1 oracle dba 255396 Dec  5 20:37 bbed
oracle@ocp11g:/u01/app/oracle/product/11.2.0/db/rdbms/lib$ cp bbed $ORACLE_HOME/bin
oracle@ocp11g:/u01/app/oracle/product/11.2.0/db/rdbms/lib$ cd $ORACLE_HOME/bin
oracle@ocp11g:/u01/app/oracle/product/11.2.0/db/bin$ ls -l bbed
-rwxr-xr-x 1 oracle dba 255396 Dec  5 20:38 bbed

 

这样可以正常生成bbed文件,但是使用的时候会有如下的错误

oracle@ocp11g:/u01/app/oracle/product/11.2.0/db/bin$ bbed
Message 112 not found; No message file for product=RDBMS, facility=BBED
BBED-00113: file not found

 

需要将相应的messge文件也一并拷贝过来

oracle@ocp11g:/u01/app/oracle/product/11.2.0/db/bin$ scp oracle@10.XX.X.YY:/home/oracle/product/10gr2/db/rdbms/mesg/bbedus.msb ~

bbedus.msb                                                                                        100% 8704     8.5KB/s   00:00   
oracle@ocp11g:/u01/app/oracle/product/11.2.0/db/bin$ cd
oracle@ocp11g:/home/oracle$ ls
bbedus.msb  Desktop  orabak  oradata  oradiag_oracle  oraInventory  sbbdpt.o  ssbbded.o
oracle@ocp11g:/home/oracle$ mv bbedus.msb /u01/app/oracle/product/11.2.0/db/rdbms/mesg/
oracle@ocp11g:/home/oracle$
oracle@ocp11g:/home/oracle$
oracle@ocp11g:/home/oracle$ bbed
Password:

BBED: Release 2.0.0.0.0 - Limited Production on Sun Dec 5 20:40:29 2010

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

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

BBED>
BBED>

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25037908/viewspace-680941/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2010-12-05

  • 博文量
    8
  • 访问量
    19396