bbed是一个强大的工具,同意我们绕过oracle直接从数据文件里改动相应的内容

ZBDBA@orcl11g>select * from emp;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- -------------------- ------------------ ---------- ------------ ---------- ---------- ----------
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
7839 KING PRESIDENT 17-NOV-81 5000 10
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30
7876 ADAMS CLERK 7788 23-MAY-87 1100 20
7900 JAMES CLERK 7698 03-DEC-81 950 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7934 MILLER CLERK 7782 23-JAN-82 1300 10 13 rows selected.

这里我们查看该表相应的物理块号

ZBDBA@orcl11g>select rowid,dbms_rowid.rowid_object(rowid) robject,
2 dbms_rowid.rowid_relative_fno(rowid) fno,
3 dbms_rowid.rowid_block_number(rowid) bno,
4 dbms_rowid.rowid_row_number(rowid) rno from emp where rownum=1;
ROWID ROBJECT FNO BNO RNO
------------------ ---------- ---------- ---------- ----------
AAASKaAAGAAAACDAAA 74394 6 131

使用bbed进行改动

BBED> set file 6 block 131
FILE# 6
BLOCK# 131 BBED> map
File: /opt/oracle/oradata/orcl11g/zbdba01.dbf (6)
Block: 131 Dba:0x01800083
------------------------------------------------------------
KTB Data Block (Table/Cluster) struct kcbh, 20 bytes @0 struct ktbbh, 96 bytes @20 struct kdbh, 14 bytes @124 struct kdbt[1], 4 bytes @138 sb2 kdbr[13] @142 ub1 freespace[7491] @168 ub1 rowdata[529] @7659 ub4 tailchk @8188

这里通过字符串形式查找 SCOTT

BBED> find /c SCOTT
File: /opt/oracle/oradata/orcl11g/zbdba01.dbf (6)
Block: 131 Offsets: 7902 to 8191 Dba:0x01800083
------------------------------------------------------------------------
53434f54 5407414e 414c5953 5403c24c 430777bb 04130101 0102c21f ff02c115
2c000803 c24e5305 434c4152 4b074d41 4e414745 5203c24f 280777b5 06090101
0103c219 33ff02c1 0b2c0008 03c24d63 05424c41 4b45074d 414e4147 455203c2
4f280777 b5050101 010103c2 1d33ff02 c11f2c00 0803c24d 37064d41 5254494e
0853414c 45534d41 4e03c24d 630777b5 091c0101 0103c20d 3302c20f 02c11f2c
000803c2 4c43054a 4f4e4553 074d414e 41474552 03c24f28 0777b504 02010101
03c21e4c ff02c115 2c000803 c24c1604 57415244 0853414c 45534d41 4e03c24d
630777b5 02160101 0103c20d 3302c206 02c11f2c 000803c2 4b640541 4c4c454e
0853414c 45534d41 4e03c24d 630777b5 02140101 0102c211 02c20402 c11f0206
c656 <32 bytes per line>

dump下来看是不是我们须要的内容:

BBED> d /v offset 7902 count 128
File: /opt/oracle/oradata/orcl11g/zbdba01.dbf (6)
Block: 131 Offsets: 7902 to 8029 Dba:0x01800083
-------------------------------------------------------
53434f54 5407414e 414c5953 5403c24c l SCOTT.ANALYST..L
430777bb 04130101 0102c21f ff02c115 l C.w.............
2c000803 c24e5305 434c4152 4b074d41 l ,....NS.CLARK.MA
4e414745 5203c24f 280777b5 06090101 l NAGER..O(.w.....
0103c219 33ff02c1 0b2c0008 03c24d63 l ....3....,....Mc
05424c41 4b45074d 414e4147 455203c2 l .BLAKE.MANAGER..
4f280777 b5050101 010103c2 1d33ff02 l O(.w.........3..
c11f2c00 0803c24d 37064d41 5254494e l ..,....M7.MARTIN <16 bytes per line> BBED> d /v offset 7902 count 12
File: /opt/oracle/oradata/orcl11g/zbdba01.dbf (6)
Block: 131 Offsets: 7902 to 7913 Dba:0x01800083
-------------------------------------------------------
53434f54 5407414e 414c5953 l SCOTT.ANALYS <16 bytes per line> BBED> modify /c 'ZBDBA' offset 7902
Warning: contents of previous BIFILE will be lost. Proceed? (Y/N) y
File: /opt/oracle/oradata/orcl11g/zbdba01.dbf (6)
Block: 131 Offsets: 7902 to 7913 Dba:0x01800083
------------------------------------------------------------------------
5a424442 4107414e 414c5953 <32 bytes per line> BBED> d /v offset 7902 count 12
File: /opt/oracle/oradata/orcl11g/zbdba01.dbf (6)
Block: 131 Offsets: 7902 to 7913 Dba:0x01800083
-------------------------------------------------------
5a424442 4107414e 414c5953 l ZBDBA.ANALYS <16 bytes per line> BBED> sum apply
Check value for File 6, Block 131:
current = 0x60f5, required = 0x60f5 BBED> verify
DBVERIFY - Verification starting
FILE = /opt/oracle/oradata/orcl11g/zbdba01.dbf
BLOCK = 131 DBVERIFY - Verification complete Total Blocks Examined : 1
Total Blocks Processed (Data) : 1
Total Blocks Failing (Data) : 0
Total Blocks Processed (Index): 0
Total Blocks Failing (Index): 0
Total Blocks Empty : 0
Total Blocks Marked Corrupt : 0
Total Blocks Influx : 0
Message 531 not found; product=RDBMS; facility=BBED
BBED>

刷新缓存:

alter system flush buffer_cache;
查看是否改动成功:
ZBDBA@orcl11g>select * from emp;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- -------------------- ------------------ ---------- ------------ ---------- ---------- ----------
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7788 ZBDBA KING PRESIDENT 17-NOV-81 5000 10
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30
7876 ADAMS CLERK 7788 23-MAY-87 1100 20
7900 JAMES CLERK 7698 03-DEC-81 950 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7934 MILLER CLERK 7782 23-JAN-82 1300 10

使用bbed改动数据的更多相关文章

  1. 使用BBED恢复数据文件头

    转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/31018075 @@@@@@@利用BBED模拟损坏5文件1号块(文件头) BBED> ...

  2. bbed改动undo段状态(ORA-01578)

    ZBDBA@orcl11g>select * from zbdba; select * from zbdba * ERROR at line 1: ORA-01578: ORACLE data ...

  3. 利用BBED恢复数据文件头

    转载请注明出处:http: @@@@@@@利用BBED模拟损坏5文件1号块(文件头) BBED block block ) Block: Dba:0x01400001 ---------------- ...

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

    bbed是随oracle软件公布的一款数据块查看和编辑工具,作为一款内部工具.bbed的功能很强大,可是假设使用不当可能给数据库造成无法挽回的损失.因此.我们建议在使用bbed改动数据块前备份被改动的 ...

  5. oracle BBED 直接改动数据库block块

    1.BBED配置 1)将相应文件放到$ORACLE_HOME/rdbms/mesg和$ORACLE_HOME/rdbms/lib中:     --将lib中bbedus.msb和bbedus.msg ...

  6. [20180604]在内存修改数据(bbed).txt

    [20180604]在内存修改数据(bbed).txt --//以前曾经做过在内存修改数据,通过oradebug poke命令修改内存信息,相关链接:--//http://blog.itpub.net ...

  7. 使用BBED理解和修改Oracle数据块

    1.生成bbed list file文件: SQL> select file#||' '||name||' '||bytes from v$datafile; $ vim dbfile.txt ...

  8. jquery easyui datagrid实现数据改动

    1.单击选中待改动行 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA= ...

  9. bbed初体验

    bbed能够直接查看或改动数据文件.听起来非常强大,以下体验一下,安装方法网上一搜一大把,我的环境是centos+10G的 bbed參考文档:http://pan.baidu.com/s/1hqCC6 ...

随机推荐

  1. OpenMP入门教程(二)

    OpenMP API概述 OpenMP由三部分组成: 编译指令(19) 运行时库程序(32) 环境变量(9) 后来的API包含同样的三个组件,只是三者的数量都有所增加. 编译器指令 OpenMP编译器 ...

  2. D1. Toy Train (Simplified)

    D1. Toy Train (Simplified) time limit per test 2 seconds memory limit per test 256 megabytes input s ...

  3. oracle优化器使用(oracle11g)

    一:优化器介绍 优化器(optimizer)是oracle数据库内置的一个核心子系统.优化器的目的是按照一定的判断原则来得到它认为的目标SQL在当前的情形下的最高效的执行路径,也就是为了得到目标SQL ...

  4. asp.net C# 获得配置文件AppSettings 的值

    using System.Configuration;//导入命名空间 //配置文件 Web.config <appSettings> <!--数据连接字符串--> <a ...

  5. 尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框

    尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框 近期正在逐步摸索学习React的用法,尝试着写几个通用型的组件,整体项目还是根据webpack+react+css-me ...

  6. vue 封装自定义组件

    组件结构 sjld >index.js >sjid.vue 最好单独放一个文件夹,有依赖的话装依赖 Sjld.vue 内容 <template id="sjld" ...

  7. Python 迭代器-生成器-面向过程编程

    上节课复习:1. 函数的递归调用 在调用一个函数的过程中又直接或者间接地调用了函数本身称之为函数的递归 函数的递归调用有两个明确的阶段: 1. 回溯 一层一层地调用本身 注意: 1.每一次调用问题的规 ...

  8. 深入React技术栈之setState详解

    抛出问题 class Example extends Component { contructor () { super() this.state = { value: 0, index: 0 } } ...

  9. hdu 2377 Bus Pass

    Bus Pass Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  10. js变量类型详解

    <html> <title>js变量类型详解</title> <meta http-equiv="content-type" conten ...