在Oracle中,什么是BBED?它有哪些作用?
  ETWZF7L1nsXD 2023年11月02日 63 0

题目部分

在Oracle中,什么是BBED?它有哪些作用?


答案部分


BBED(Block Brower and Editor)是用来直接查看和修改Oracle数据块的一个内部工具,它可以直接修改Oracle数据文件块的内容,在一些极端恢复场景下比较有用。因为该工具不被Oracle服务支持,所以,默认是没有生成可执行文件的,在使用前需要编译生成。

虽然BBED可以在数据库打开的状态下进行修改,但是建议在做任何修改操作之前先关闭数据库,这样可以避免CHECKPOINT进程重写BBED对BLOCK的修改,也避免Oracle在BBED修改完成之前读BLOCK或声明BLOCK为CORRUPT,从而导致一系列的ORA-600内部错误。

BBED的默认密码为blockedit

在Oracle 11g下,BBED的编译文件需要从Oracle 10g下拷贝。Oracle 10g可直接编译。需要拷贝如下5个文件:

1$ORACLE_HOME/rdbms/lib/ssbbded.o
2$ORACLE_HOME/rdbms/lib/sbbdpt.o
3$ORACLE_HOME/rdbms/mesg/bbedus.msb
4$ORACLE_HOME/rdbms/mesg/bbedus.msg
5$ORACLE_HOME/rdbms/mesg/bbedar.msb


拷贝到Oracle 11g下后进行赋权操作:

1ls -l  $ORACLE_HOME/rdbms/lib/*sbbd*
2ls -l  $ORACLE_HOME/rdbms/mesg/bbed*
3chown oracle:dba /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/*sbbd*
4chown oracle:dba /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/mesg/bbed*
5


进行编译:

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

编译成功后,编辑文件/home/oracle/file.txt:

1vi /home/oracle/file.txt
2set line 9999 pagesize 9999
3col name format a80
4select file#||' '||name||' '||bytes name from v$datafile;


输入如下命令即可进入BBED的界面:

1bbed PASSWORD=blockedit  mode=edit blocksize=8192 listfile=/home/oracle/file.txt
2bbed password=blockedit blocksize=8192 mode=edit filename='/u01/app/oracle/oradata/lhrdb/users01.dbf'



【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  4XmIZ515Cxj5   2023年11月24日   19   0   0 oracle锁表
  9JCEeX0Eg8g4   2023年11月28日   15   0   0 主数据数据库mysql
ETWZF7L1nsXD