当前位置: 首页 > news >正文

Oracle bbed编译安装及配置

1. 什么是bbed ?

Oracle Block Brower and EDitor Tool,是一个可以对oracle data block进行查看,编辑修改的内置工具。对于bbed,oracle本身是不提供支持的。

2. 如何编译bbed环境?

10g版本:

1) 编译bbed

cd $ORACLE_HOME/rdbms/lib

make -f $ORACLE_HOME/rdbms/lib/ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed

2) 修改环境变量

  将$ORACLE_HOME/rdbms/lib 加入到PATH变量中,如下:

  PATH=$ORACLE_HOME/bin:$PATH:/home/ora10g/product/10.2/rdbms/lib; export PATH

11g以及12c及19c版本:(本人测试环境为11g/12c/19c)

将bbed编译安装需要的一下4个包上传到/home/oracle/bbed目录下

ssbbded.o

sbbdpt.o

bbedus.msb

bbedus.msg

1) copy /home/oracle/bbed目录下的包到对应的环境目录:

cp /home/oracle/bbed/*.o $ORACLE_BASE/product/11.2.0/db_1/rdbms/lib

cp /home/oracle/bbed/bbedus* $ORACLE_BASE/product/11.2.0/db_1/rdbms/mesg

cp /home/oracle/bbed/*.o $ORACLE_BASE/product/12.2.0/db_1/rdbms/lib

cp /home/oracle/bbed/bbedus* $ORACLE_BASE/product/12.2.0/db_1/rdbms/mesg

cp /home/oracle/bbed/*.o $ORACLE_BASE/product/19.3.0/db_1/rdbms/lib

cp /home/oracle/bbed/bbedus* $ORACLE_BASE/product/19.3.0/db_1/rdbms/mesg

cp /home/oracle/bbed/*.o $ORACLE_HOME/rdbms/lib

cp /home/oracle/bbed/bbedus* $ORACLE_HOME/rdbms/mesg

cd $ORACLE_BASE/product/12.2.0/db_1/rdbms/lib

rm -rf ssbbded.o

rm -rf sbbdpt.o

cd $ORACLE_BASE/product/12.2.0/db_1/rdbms/mesg

rm -rf bbedus.msb

rm -rf bbedus.msg

cd $ORACLE_BASE/product/19.3.0/db_1/rdbms/lib

rm -rf ssbbded.o

rm -rf sbbdpt.o

cd $ORACLE_BASE/product/19.3.0/db_1/rdbms/mesg

rm -rf bbedus.msb

rm -rf bbedus.msg

2) 编译bbed

cd $ORACLE_HOME/rdbms/lib                      

make -f $ORACLE_HOME/rdbms/lib/ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed

密码是:blockedit

报错:

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

Linking BBED utility (bbed)

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

gcc -o /u01/app/oracle/product/11.2.0/db_1/bin/bbed -m64 -z noexecstack -L/u01/app/oracle/product/11.2.0/db_1/rdbms/lib/ -L/u01/app/oracle/product/11.2.0/db_1/lib/ -L/u01/app/oracle/product/11.2.0/db_1/lib/stubs/  /u01/app/oracle/product/11.2.0/db_1/lib/s0main.o /u01/app/oracle/product/11.2.0/db_1/rdbms/lib/ssbbded.o /u01/app/oracle/product/11.2.0/db_1/rdbms/lib/sbbdpt.o `cat /u01/app/oracle/product/11.2.0/db_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -ldbtools11 -lclntsh  `cat /u01/app/oracle/product/11.2.0/db_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/app/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/app/oracle/product/11.2.0/db_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /u01/app/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/app/oracle/product/11.2.0/db_1/lib/sysliblist` -Wl,-rpath,/u01/app/oracle/product/11.2.0/db_1/lib -lm    `cat /u01/app/oracle/product/11.2.0/db_1/lib/sysliblist` -ldl -lm   -L/u01/app/oracle/product/11.2.0/db_1/lib

/u01/app/oracle/product/11.2.0/db_1/rdbms/lib/ssbbded.o: could not read symbols: File in wrong format

collect2: ld returned 1 exit status

make: *** [/u01/app/oracle/product/11.2.0/db_1/bin/bbed] Error 1

原因:

是由于使用的bbed需要的包为32位,需要从64位环境拷贝相关包

编译成功:

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

Linking BBED utility (bbed)

rm -f /u01/app/oracle/product/12.2.0/db_1/bin/bbed

/u01/app/oracle/product/12.2.0/db_1/bin/orald -o /u01/app/oracle/product/12.2.0/db_1/bin/bbed -m64 -z noexecstack -Wl,--disable-new-dtags -L/u01/app/oracle/product/12.2.0/db_1/rdbms/lib/ -L/u01/app/oracle/product/12.2.0/db_1/lib/ -L/u01/app/oracle/product/12.2.0/db_1/lib/stubs/  /u01/app/oracle/product/12.2.0/db_1/lib/s0main.o /u01/app/oracle/product/12.2.0/db_1/rdbms/lib/ssbbded.o /u01/app/oracle/product/12.2.0/db_1/rdbms/lib/sbbdpt.o `cat /u01/app/oracle/product/12.2.0/db_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lngsmshd12 -ldbtools12 -lclntsh -lclntshcore  `cat /u01/app/oracle/product/12.2.0/db_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lngsmshd12 -lnro12 `cat /u01/app/oracle/product/12.2.0/db_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lngsmshd12 -lnnz12 -lzt12 -lztkg12 -lztkg12 -lclient12 -lnnetd12  -lvsn12 -lcommon12 -lgeneric12 -lmm -lsnls12 -lnls12  -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 `cat /u01/app/oracle/product/12.2.0/db_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lngsmshd12 -lnro12 `cat /u01/app/oracle/product/12.2.0/db_1/lib/ldflags`    -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lngsmshd12 -lclient12 -lnnetd12  -lvsn12 -lcommon12 -lgeneric12   -lsnls12 -lnls12  -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 -lclient12 -lnnetd12  -lvsn12 -lcommon12 -lgeneric12 -lsnls12 -lnls12  -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12   `cat /u01/app/oracle/product/12.2.0/db_1/lib/sysliblist` -Wl,-rpath,/u01/app/oracle/product/12.2.0/db_1/lib -lm    `cat /u01/app/oracle/product/12.2.0/db_1/lib/sysliblist` -ldl -lm   -L/u01/app/oracle/product/12.2.0/db_1/lib

3. 如何配置bbed?

1) 准备par文件

par.bbed(文件名可自定义):

blocksize=8192           ---指定block size大小                                          

listfile=/home/oracle/bbed/bbedfile.txt    ---指定文件名

logfile=/home/oracle/bbed/log.bbd          ----制定记录的日志文件及位置     

mode=edit                ---指定操作模式(分edit和view两种)                      

spool=yes                ---是否记录bbed的操作日志

2) 准备listfile.txt文件

listfile.txt(文件名可自定义):

8 /u01/app/oracle/oradata/DEEP/deep1/system01.dbf 272629760

9 /u01/app/oracle/oradata/DEEP/deep1/sysaux01.dbf 319815680

10 /u01/app/oracle/oradata/DEEP/deep1/undotbs01.dbf 550502400

11 /u01/app/oracle/oradata/DEEP/deep1/users01.dbf 5242880

12 /u01/app/oracle/oradata/DEEP/deep1/deep.dbf 209715200

说明:

1) 第1列,为文件号,可以人为定义。

2) 第2列,需要使用bbed操作的文件名(全路径)。

3) 第3列,文件大小,可不写。

4)登陆验证

为了登陆方便,在环境变量中设置别名

alias bbed="bbed parfile=/home/oracle/bbed/par.bbd"

[oracle@deep ~]$ bbed

BBED> show

        FILE#           8

        BLOCK#          1

        OFFSET          0

        DBA             0x02000001 (33554433 8,1)

        FILENAME        /u01/app/oracle/oradata/DEEP/deep1/system01.dbf

        BIFILE          bifile.bbd

        LISTFILE        /home/oracle/bbed/bbedfile.txt

        BLOCKSIZE       8192

        MODE            Edit

        EDIT            Unrecoverable

        IBASE           Dec

        OBASE           Dec

        WIDTH           80

        COUNT           512

        LOGFILE         /home/oracle/bbed/log.bbd

        SPOOL           Yes

BBED> info

File#  Name                                                        Size(blks)

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

     8  /u01/app/oracle/oradata/DEEP/deep1/system01.dbf                  33280

     9  /u01/app/oracle/oradata/DEEP/deep1/sysaux01.dbf                  39040

    10  /u01/app/oracle/oradata/DEEP/deep1/undotbs01.dbf                 67200

    11  /u01/app/oracle/oradata/DEEP/deep1/users01.dbf                     640

    12  /u01/app/oracle/oradata/DEEP/deep1/deep.dbf                      25600

至此,bbed的编译安装及配置已经完成。

http://www.lryc.cn/news/453294.html

相关文章:

  • MindSearch 部署到Github Codespace 和 Hugging Face Space
  • 【Maven】依赖管理,Maven仓库,Maven核心功能
  • Android wifi信号和漫游信号设置
  • 检查cuda和显卡的可用性
  • Kotlin:2.0.20 的新特性
  • Python内存管理与泄漏排查实战
  • 828华为云征文|华为云Flexus云服务器X实例搭建部署H5美妆护肤分销商城、前端uniapp
  • 初学51单片机之I2C总线与E2PROM二
  • Kafka学习笔记(一)Kafka基准测试、幂等性和事务、Java编程操作Kafka
  • 结合vueuse实现图片懒加载
  • Mysql数据库--聚合查询、分组查询、联合查询(不同的连接方式)
  • 计算机视觉——图像修复综述篇
  • 集中式架构和分布式架构
  • Redis: 集群高可用之故障转移和集群迁移
  • 记账软件在线、会计记账网站、财务记账官网、记账云、云记账、在线免费做账以及易舟云财务软件
  • Elasticsearch基础_3.基础操作
  • PHP永久性Cookie的含义
  • 瑜伽培训行业为何要搭建自己的专属知识付费小程序平台?集师知识付费系统 集师知识付费小程序 集师知识服务系统 集师线上培训系统
  • FFT 分析进阶-笔记
  • 毕业设计_基于springboot+layui+mybatisPlus的中小型仓库物流管理系统源码+SQL+教程+可运行】41004
  • ROS基础入门——实操教程
  • etcd 快速入门
  • Spring MVC__HttpMessageConverter、拦截器、异常处理器、注解配置SpringMVC、SpringMVC执行流程
  • GAMES101(19节,相机)
  • Django Nginx+uwsgi 安装配置
  • oracle数据备份和导入
  • C++ | Leetcode C++题解之第452题用最少数量的箭引爆气球
  • react-问卷星项目(3)
  • 69 BERT预训练_by《李沐:动手学深度学习v2》pytorch版
  • Java报错输出的信息究竟是什么?