Oracle bbed工具:直接查看与修改数据文件的实用指南

需积分: 9 4 下载量 153 浏览量 更新于2024-07-26 收藏 27KB DOCX 举报
"Oracle bbed工具是Oracle数据库管理系统中用于直接查看和编辑数据文件内容的工具,尤其在数据恢复场景中非常有用。它在Linux环境下可用,需要进行编译才能使用,并且有一个默认密码为'blockedit'。" Oracle bbed工具的使用方法涉及多个关键步骤和概念: 1. **安装与配置**: - 在Windows平台上,Oracle并未提供bbed工具,但在Linux系统中可以找到。首先,你需要通过编译`fins_rdbms.mk`文件来构建bbed,将其添加到`$ORACLE_HOME/rdbms/lib`目录下,并将该路径添加到系统的PATH环境变量中。 - 编译完成后,bbed可以通过命令行直接调用,但首次使用时需要输入默认密码,即`blockedit`。 2. **配置文件**: - 使用bbed前,需要创建两个配置文件:`a.txt`和`par.bbd`。 - `a.txt`文件用于指定要操作的数据文件及其备份文件,每一行分别列出数据文件的路径、文件名和大小。 - `par.bbd`文件是参数文件,定义了如块大小(blocksize)、列表文件(listfile)以及模式(mode,如edit)等参数。 3. **运行与操作**: - 运行bbed时,通过`parfile`参数指定`par.bbd`文件,然后按照提示输入密码。 - 在bbed交互式环境中,可以使用`help`命令查看所有可用的bbed命令,例如`SETDBA`用于切换到DBA模式,`SETFILENAME`设置要操作的文件,`SETFILE`选择文件号,`SETBLOCK`定位到特定块,`SETOFFSET`则用于设置偏移量。 4. **功能特性**: - bbed允许用户直接浏览和修改数据文件的块级内容,这对于诊断数据问题、数据恢复或者进行低级别调试非常有价值。 - 用户可以查看和修改数据,但必须谨慎操作,以免对数据库造成不可逆的损害。 5. **安全性与限制**: - 由于bbed能直接编辑数据库文件,因此它通常只应在非常必要的时候由经验丰富的DBA或技术支持人员使用,避免误操作导致数据丢失。 - 默认密码`blockedit`应尽快更改,以提高系统的安全性。 6. **数据恢复应用**: - 在数据恢复场景中,bbed可以帮助修复损坏的块,或者从备份文件中恢复丢失的数据。通过精确定位到问题块并进行编辑,可以解决某些常规手段无法处理的问题。 Oracle bbed工具是数据库管理员的强大武器,但它也要求使用者具备深厚的Oracle知识和谨慎的态度。正确使用这个工具,可以大大提高数据库问题的诊断和恢复效率,但同时也要注意操作的风险,确保在安全和合规的范围内使用。
2018-04-11 上传
提供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 $ORACLE_HOME/bin/bbed 直接生成到bin下为可执行文件 编译完成后: 编译成功后登陆BBED,登陆时需要密码(BBED的默认密码是blockedit) [oracle@node3 bin]$ bbed Password: BBED: Release 2.0.0.0.0 - Limited Production on Wed Apr 11 10:01:07 2018 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. ************* !!! For Oracle Internal Use only !!! *************** BBED> 二. 11g linux编译BBED oracle 11gR2环境中编译BBED可执行文件所需要的ssbbded.o和sbbdpt.o对象文件被移除,不过可以从oracle 10g环境中将这两个文件拷贝到oracle11g环境进行编译。 除了将上面的ssbbded.o和sbbdpt.o 文件拷贝到11g环境外,BBED还需要用到 $ORACLE_HOME/rdbms/mesg目录下的bbedus.msb这个信息文件, 这几个文件都需要从oracle10g中拷贝到oracle11g中对于的目录中。 文件夹linux_10g_bbed_64 包括了这3个文件。 下面是将以上3个文件从Oracle 10g中拷贝到11g对于目录后编译的过程。 1)把linux_10g_bbed_64目录下的10g的ssbbded.o和sbbdpt.o 放到 $ORACLE_HOME/rdbms/lib 目录下 2)把linux_10g_bbed_64目录下的10g的 bbedus.msb 文件拷贝到 $ORACLE_HOME/rdbms/mesg目录下 3)编译 [oracle@node1 ~] cd $ORACLE_HOME/rdbms/lib [oracle@node1 ~] make -f ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed [oracle@node3 bin]$ bbed Password: BBED: Release 2.0.0.0.0 - Limited Production on Wed Apr 11 10:01:07 2018 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. ************* !!! For Oracle Internal Use only !!! *************** BBED> 三、windows 11GR2 bbed oracle9i版本以后Oracle不装载BBED了, Windows上也没有makefile来编译bbed。 所以,如果你想在Windows上使用bbed,你需要很多文件(本下载压缩包已经全包含了): 你需要一个bbed.exe. 你只能从Oracle 9i的安装中得到它。 你需要有一堆的DLL。所有这些DLL在Oracle9i安装中可以得到。 使用BBED需要消息文件。这文件是“bbedus.msb”,位于Oracle9i安装的MESG目录下。而你需要将其复制到ORACLE_HOME的RDBMS\MESG目录下。 这些在目录本压缩包的 bbed_win 中已经全部提供了。 把它们放在BBED安装的目录下(比如D:\bbed_win),环境变量ORACLE_HOME设置好。确保消息文件在$ORACLE_HOME\RDBMS\MESG下,最后启动BBED: D:\bbed_win>bbed Password: BBED: Release 2.0.0.0.0 - Limited Production on Wed Apr 11 10:20:43 2018 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. ************* !!! For Oracle Internal Use only !!! *************** BBED>