Oracle   bbed 使用

1:安装: 11g R2 版的

cd $ORACLE_HOME/

find . -name ins_rdbms.mk

cd rdbms/lib

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

在11g会报错。需要在网上下载三个文件。或者你有10g 的库直接把10g的文件拷过来:

附上下载地址: http://download.csdn.net/detail/jycjyc/4578006

将下载到的bbedus.msb拷贝到上一级目录mesg中   cp lib/bbedus.msb mesg/

之后再执行   make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed

$./bbed

进去后bbed 密码是:blockedit

2:配置查看:

然后就是show  all 看一下要做哪些预配:

在另一个窗口中找出要操作的文件select * from v$datafile;

那这里我们可以插入一条记录,看看文件究竟是被真的插入到那:用到dbms_rowid 这个包

select dbms_rowid.ROWID_RELATIVE_FNO(rowid), dbms_rowid.ROWID_BLOCK_NUMBER(rowid),id from t4;

查出来真正插入的数据在 2号文件121号块接下来设置filename ,file ,block ,blocksize ,mode

set  FILENAME ‘/u01/app/oracle/test/data/test_01.dbf‘

set file  2

set block 121

set  blocksize  8192

set mode edit                    //edit 是可以修改, browse 模式不允许进行修改

bbed 中的查找: find

bbed> set block 47   //读47号块

bbed>dump               // 显示出dump

> show all;

可以看下偏移量。OFFSET

以字符串查找/c

>find /c BBBBBBB

find 就是查找并重置偏移量。

按十六进制查找:

> find /x 42424242424242

有时报invalid number   那是因为  32 位 的错。

修改命令: modify  /c

bbed > modify /c EEEEEEE

此时再来查看原先的数据:

select * from t1;

如果现在报block corrupted:

那这是由于校验和的问题:可以设置把校验和关掉:

show parameter check;

1)

更改db_block_checksum = false;

alter system set db_block_checksum=false;

再刷新下buffer_cache ;

alter system  flush buffer_cache;

select * from t1;

2) 还有一种更好的办法:

直接更改校验和

bbed> sum apply

然后回去在刷新次buffer_cache

alter system flush buffer_cache

Oracle   bbed 使用

时间: 2024-10-14 01:58:41

Oracle   bbed 使用的相关文章

oracle BBED 直接改动数据库block块

1.BBED配置 1)将相应文件放到$ORACLE_HOME/rdbms/mesg和$ORACLE_HOME/rdbms/lib中: --将lib中bbedus.msb和bbedus.msg 放在$ORACLE_HOME/rdbms/mesg下 --将lib中sbbdpt.o和ssbbded.o 放在$ORACLE_HOME/rdbms/lib下 2)安装BBED --在$ORACLE_HOME/rdbms/lib下运行: [[email protected] lib]$ make -f ins

Oracle bbed 实用示例-----修改Data内容、恢复delete的rows

bbed 可以在db open 状态来进行修改,但是建议在做任何修改操作之前先shutdown db. 这样避免checkpoint 进程重写bbed 对block 的修改. 也避免oracle 在bbed 修改完成之前读block 或者申明block 为corrupt. 一. 示例: 修改Data内容 1.1连接bbed [[email protected] ~]$ bbed parfile=/u01/app/oracle/bbed/bbed.par Password: BBED: Relea

oracle BBED 直接修改数据库block块

--将lib中bbedus.msb和bbedus.msg 放在$ORACLE_HOME/rdbms/mesg下 --将lib中sbbdpt.o和ssbbded.o 放在$ORACLE_HOME/rdbms/lib下 --在$ORACLE_HOME/rdbms/lib下执行:[[email protected] lib]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed 执行后会在lib下生成一个bbed可执行文件 默认密码; blockedit

Oracle bbed使用说明1

一.centos上编译安装BBED工具 [[email protected] ~]$ cd $ORACLE_HOME/rdbms/lib [[email protected] ~]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed 也可通过以下命令将bbed生成到$ORACLE_HOME/bin目录 [[email protected] ~]$ make -f ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $OR

Oracle bbed使用说明2---常用命令

一.BBED常用命令说明 先看帮助的说明 BBED> help all SET DBA [ dba | file#, block# ] SET FILENAME 'filename' SET FILE file# SET BLOCK [+/-]block# SET OFFSET [ [+/-]byte offset | symbol | *symbol ] SET BLOCKSIZE bytes SET LIST[FILE] 'filename' SET WIDTH character_coun

Oracle bbed 实用示例-----File Header Reset

一.查看当前环境 1.1 当前控制文件中的SCN号 [[email protected] ~]$ sqlplus /nolog SQL*Plus: Release 10.2.0.1.0 - Production on Sat Jan 17 10:11:34 2015 Copyright (c) 1982, 2005, Oracle. All rights reserved. SQL> conn /as sysdba Connected. SQL> col name format a65 SQL

Oracle模拟文件损坏BBED

模拟文件损坏可以使用两个工具,windows nt 下使用uttra edit ,还有就是使用ORACLE内部工具BBED,下面主要看这个工具如何使用. 一.BBED(Oracle?Block?Browerand?EDitor Tool),用来直接查看和修改数据文件数据的一个工具,是Oracle一款内部工具,可以直接修改Oracle数据文件块的内容,在一些极端恢复场景下比较有用.该工具不受Oracle支持,所以默认是没有生成可执行文件的,在使用前需要重新连接. 我这里的作用 二.BBED 安装

使用bbed编辑研究oracle数据块结构

bbed是随oracle软件发布的一款数据块查看和编辑工具,作为一款内部工具,bbed的功能非常强大,但是如果使用不当可能给数据库造成无法挽回的损失.因此.我们建议在使用bbed修改数据块前备份被修改的数据文件,并且在成功修复数据块后立即将数据库数据导出,并新建数据库. 编辑并使用bbed 首次使用bbed前必须要经过链接编译.编译方法如下: [[email protected] lib]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed Lin

Oracle 11g 编译使用BBED

环境:RHEL 6.4 + Oracle 11.2.0.4 1. 拷贝缺失文件 2. 编译BBED 3. BBED使用测试 Reference 1. 拷贝缺失文件 11g中缺失几个相关文件,但我们实际可以从10g拷贝相关文件到11g对应目录下: $ORACLE_HOME/rdbms/lib/sbbdpt.o $ORACLE_HOME/rdbms/lib/ssbbded.o $ORACLE_HOME/rdbms/mesg/bbedus.msb $ORACLE_HOME/rdbms/mesg/bbe