BBED编译的时候需要使用到sbbdpt.o和ssbbded.o两个库文件,但是从11g开始,Oracle不再提供这两个库文件,但是可以使用10g版本中的这两个库文件在11g中编译生成BBED工具。
看了一篇博客,写的很清晰,
[root@MHAD1 database]# for jar in $(find . -type f -name "*.jar"|grep rdbms);do > /soft/product/10.2.0.5/dbh/jdk/bin/jar -tvf $jar | grep sbbd && echo $jar > done 3043 Thu Sep 08 03:43:08 CST 2005 rdbms/lib32/sbbdpt.o 2721 Thu Sep 08 03:43:08 CST 2005 rdbms/lib32/ssbbded.o ./stage/Components/oracle.rdbms.hybrid/10.2.0.1.0/1/DataFiles/filegroup1.jar 1863 Sat Sep 17 19:59:24 CST 2005 rdbms/lib/sbbdpt.o 1191 Sat Sep 17 19:59:28 CST 2005 rdbms/lib/ssbbded.o ./stage/Components/oracle.rdbms/10.2.0.1.0/1/DataFiles/filegroup33.jar
这是一个先x64的安装介质,所以里面也包含了32为的库文件,按需使用,你现在可以去解压找到的jar包,然后从里面提取你想要的库文件了。
把这两个库文件复制到11g的数据库中,你现在就可以编译bbed了:
[oracle@MHAD2-11g lib]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed Linking BBED utility (bbed) rm -f /soft/product/11.2.0.4/dbh/rdbms/lib/bbed gcc -o /soft/product/11.2.0.4/dbh/rdbms/lib/bbed -m64 -z noexecstack -L/soft/product/11.2.0.4/dbh/rdbms/lib/ -L/soft/product/11.2.0.4/dbh/lib/ -L/soft/product/11.2.0.4/dbh/lib/stubs/ /soft/product/11.2.0.4/dbh/lib/s0main.o /soft/product/11.2.0.4/dbh/rdbms/lib/ssbbded.o /soft/product/11.2.0.4/dbh/rdbms/lib/sbbdpt.o `cat /soft/product/11.2.0.4/dbh/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 -lclntsh `cat /soft/product/11.2.0.4/dbh/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /soft/product/11.2.0.4/dbh/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 /soft/product/11.2.0.4/dbh/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /soft/product/11.2.0.4/dbh/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 /soft/product/11.2.0.4/dbh/lib/sysliblist` -Wl,-rpath,/soft/product/11.2.0.4/dbh/lib -lm `cat /soft/product/11.2.0.4/dbh/lib/sysliblist` -ldl -lm -L/soft/product/11.2.0.4/dbh/lib [oracle@MHAD2-11g lib]$ bbed Message 112 not found; No message file for product=RDBMS, facility=BBED BBED-00113: file not found
注意,上面到错误Message 112 not found,说明BBED命令还缺失一个mesg文件:bbedus.msb,还是使用同样到方法获得,然后放到$ORACLE_HOME/rdbms/mesg目录下。
其他库文件你也可以按此方法获取。
$ORACLE_HOME/rdbms/mesg/bbedus.msg
$ORACLE_HOME/rdbms/mesg/bbedus.msd
源博客地址;https://blog.csdn.net/mrluoe/article/details/41250201
相关推荐
bbed编译资源包是针对Linux环境的,包括32位和64位版本,这表明它可以适应不同架构的服务器系统。对于那些在Linux环境中运行Oracle数据库的管理员来说,这个工具是必备的应急方案之一。 bbed的主要功能包括: 1. *...
在Oracle 11g环境中,由于BBED不是标准安装的一部分,因此需要用户自行编译和配置。 首先,为了在Oracle 11g中使用BBED,你需要确保系统中缺少的文件已正确地从10g版本复制到相应的位置。这些文件包括: 1. `$...
在Linux上编译bbed,你需要下载源代码,设置正确的编译环境,然后使用`make`命令进行编译。32位和64位系统可能需要不同的编译选项。 在提供的压缩包中,有名为“bbed_32位linux所需的三个文件”和“bbed 64位linux...
在Linux x64环境下,如果你需要从源代码级别编译BBD,那么提供的"oracle11g for linuxx64编译bbed需要的三个文件"将扮演关键角色。这些文件包括`bbedus.msb`、`bbedus.msg`和`sbbdpt.o`、`ssbbded.o`,以及一个详细...
2. **文件编译**:除了修改数据,bbed还支持对PL/SQL源代码的编译,这对于快速测试和修复存储过程、函数和其他数据库对象的语法错误至关重要。 3. **数据操作**:bbed提供了丰富的命令集,可以执行插入、更新、删除...
2. **编译BBED**:使用Oracle提供的Makefile,例如`ins_rdbms.mk`,执行`make`命令来编译BBED。 3. **运行BBED**:编译完成后,通过命令行启动BBED,通常格式为`bbedit <database instance> <data file>`,其中`...
这个“BBED_10g_x64.zip”文件包含了适用于64位系统的Oracle 10g版本的BBED工具,以及可能用于在11g环境中编译和安装BBED的相关教程。在Oracle 11g中,BBED并没有作为默认提供的工具,但通过此压缩包中的资料,用户...
本文将详细介绍如何编译并使用BBED工具,并对其中涉及的关键命令进行解释。 #### 二、编译BBED工具 对于Oracle 9i和10g版本,默认情况下已经包含了一个名为`bbed`的库文件。用户只需要完成简单的编译步骤即可使用...
由于11g版本的Linux环境中默认并未提供`bbed`,因此需要从10g版本中获取必要的文件并自行编译安装。 ### 安装bbed 1. 首先,你需要从10g版本中复制必要的文件到11g的对应目录: - `sbbdpt.o` 和 `ssbbded.o` 复制...
要使用BBED,通常需要在Oracle数据库安装目录下重新编译生成bbedit可执行文件。具体操作涉及到对Oracle主目录下的lib目录和mesg目录下相关文件进行编译。在这个过程中,需要确保你对$ORACLE_HOME/rdbms/lib/*sbbd*和...
BBED,全称为Block-Based Editor,是Oracle数据库系统中的一款强大的数据修复工具。它主要用于对数据库块进行低级别编辑,帮助DBA(数据库管理员)在遇到数据损坏或需要手动修复特定数据块时进行操作。在Oracle...
源码的提供意味着用户或开发人员可以根据需要进行编译和定制,以适应特定环境或扩展功能。如果你打算使用这个源码,你需要有一定的C或C++编程基础,以及对Oracle数据库内部机制的了解。 总之,BBED是一个强大的...
提供10g,11g linux及windows BBED工具 及详细编译说明readme文件。 一. 10g linux编译BBED [oracle@node3 ~]$ cd $ORACLE_HOME/rdbms/lib [oracle@node3 lib]$ make -f ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $...
3. **ssbbded.o**:同样,这是一个可能包含BBED功能的编译后对象文件。"ssbbded"可能指的是BBED的某些特定组件或服务,如后台进程或者特定的数据库操作处理。 在安装Oracle 11g数据库时,BBED可能作为额外的故障...
5. **编译环境**:如果你需要编译或安装特定的旧版组件(如bbed),确保系统中已经安装了GCC编译器和其他必要的开发工具。 6. **解压文件**:将`linux10g_64_bbed`这个压缩包解压到适当的位置,比如`/u01/app/...
"sbbdpt"可能代表特定的bbed功能或模块,".o"扩展名表示这是目标代码,即C或C++代码经过编译但未链接到最终可执行文件的阶段。 3. ssbbded.o:同样是一个编译后的对象文件,可能与bbed的某些特定功能相关。"ssbbded...
安装过程包括下载、解压和按照提供的说明进行编译和安装。确保你的系统满足所有依赖项,并且具有足够的权限执行这些步骤。 接下来,我们将深入探讨一个具体的案例——恢复Oracle非归档数据库中离线的数据文件。在这...
2. **sbbdpt.o**:这是一个对象文件,通常包含C或C++编译后的代码段,可能与“bbed”的底层操作相关。"sbbdpt"可能是“bbed support”或类似含义的缩写,这部分代码可能提供了与数据库交互的函数,比如读取和修改...