06 使用bbed提交delete的数据--01
使用bbed模拟delete提交操作
--session 1
TEST@ orcl >create table tt(id int,name varchar2(100));
Table created.
TEST@ orcl >insert into tt values(1,'AAAAA');
1 row created.
TEST@ orcl > insert into tt values(2,'BBBBB');
1 row created.
TEST@ orcl >insert into tt values(3,'CCCCC');
1 row created.
TEST@ orcl >COMMIT;
Commit complete.
TEST@ orcl > alter system flush buffer_cache;
System altered.
TEST@ orcl > select rowid,id,name,DBMS_ROWID.ROWID_RELATIVE_FNO(rowid) file#,DBMS_ROWID.ROWID_BLOCK_NUMBER(rowid) block# from test.tt;
ROWID ID NAME FILE# BLOCK#
------------------ ---------- -------------------- ---------- ----------
AAAVW0AAFAAAAi3AAA 1 AAAAA 5 2231
AAAVW0AAFAAAAi3AAB 2 BBBBB 5 2231
AAAVW0AAFAAAAi3AAC 3 CCCCC 5 2231
TEST@ orcl >alter system checkpoint;
System altered.
TEST@ orcl > alter system dump datafile 5 block 2231;
System altered.
TEST@ orcl >select * from v$diag_info where name='Default Trace File';
INST_ID NAME VALUE
---------- -------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1 Default Trace File /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_18408.trc
TEST@ orcl >select * from tt;
ID NAME
---------- --------------------
1 AAAAA
2 BBBBB
3 CCCCC

dump的结果

--session 1执行删除操作
TEST@ orcl >delete from tt where name='AAAAA';
1 row deleted.
TEST@ orcl > select * from tt;
ID NAME
---------- --------------------
2 BBBBB
3 CCCCC
--session2执行操作
SQL> alter system checkpoint;
System altered.
SQL> alter system flush buffer_cache;
System altered.
SQL> alter system flush shared_pool;
System altered.
SQL> alter system dump datafile 5 block 2231;
System altered.
SQL> select * from v$diag_info where name='Default Trace File';
INST_ID NAME
---------- ----------------------------------------------------------------
VALUE
--------------------------------------------------------------------------------
1 Default Trace File
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_22529.trc
SQL> alter system dump datafile 5 block 2231;
System altered.
SQL> select * from v$diag_info where name='Default Trace File';
INST_ID NAME
---------- ----------------------------------------------------------------
VALUE
--------------------------------------------------------------------------------
1 Default Trace File
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_22529.trc
dump结果

--session 3 bbed会话
BBED> set file 5 block 2231
FILE# 5
BLOCK# 2231
BBED> p ktbbh
struct ktbbh, 72 bytes @20
ub1 ktbbhtyp @20 0x01 (KDDBTDATA)
union ktbbhsid, 4 bytes @24
ub4 ktbbhsg1 @24 0x000155b4
ub4 ktbbhod1 @24 0x000155b4
struct ktbbhcsc, 8 bytes @28
ub4 kscnbas @28 0x0092cb9b
ub2 kscnwrp @32 0x0000
sb2 ktbbhict @36 2
ub1 ktbbhflg @38 0x32 (NONE)
ub1 ktbbhfsl @39 0x00
ub4 ktbbhfnx @40 0x014008b0
struct ktbbhitl[], 24 bytes @44
struct ktbitxid, 8 bytes @44
ub2 kxidusn @44 0x000a
ub2 kxidslt @46 0x000b
ub4 kxidsqn @48 0x00004456
struct ktbituba, 8 bytes @52
ub4 kubadba @52 0x00c002d8
ub2 kubaseq @56 0x0175
ub1 kubarec @58 0x08
ub2 ktbitflg @60 0x8000 (KTBFCOM)
union _ktbitun, 2 bytes @62
sb2 _ktbitfsc @62 0
ub2 _ktbitwrp @62 0x0000
ub4 ktbitbas @64 0x0092cb3d
struct ktbbhitl[], 24 bytes @68
struct ktbitxid, 8 bytes @68
ub2 kxidusn @68 0x0008
ub2 kxidslt @70 0x0011
ub4 kxidsqn @72 0x000078b4
struct ktbituba, 8 bytes @76
ub4 kubadba @76 0x00c00397
ub2 kubaseq @80 0x017e
ub1 kubarec @82 0x1d
ub2 ktbitflg @84 0x0001 (NONE)
union _ktbitun, 2 bytes @86
sb2 _ktbitfsc @86 10
ub2 _ktbitwrp @86 0x000a
ub4 ktbitbas @88 0x00000000
bbed执行修改
BBED> m /x 0080 offset 84
Warning: contents of previous BIFILE will be lost. Proceed? (Y/N) y
File: /u01/app/oracle/oradata/orcl/test01.dbf (5)
Block: 2231 Offsets: 84 to 595 Dba:0x014008b7
------------------------------------------------------------------------
00800a00 00000000 00000000 00000000 00010300 ffff1800 741f5c1f 681f0000
03008c1f 801f741f c21db41e 770b6e0c 480d240e 1d0f2510 21110312 1513f013 <32 bytes per line>
BBED> sum apply
Check value for File 5, Block 2231:
current = 0x1761, required = 0x1761

再次查看
BBED> p ktbbh
struct ktbbh, 72 bytes @20
ub1 ktbbhtyp @20 0x01 (KDDBTDATA)
union ktbbhsid, 4 bytes @24
ub4 ktbbhsg1 @24 0x000155b4
ub4 ktbbhod1 @24 0x000155b4
struct ktbbhcsc, 8 bytes @28
ub4 kscnbas @28 0x0092cb9b
ub2 kscnwrp @32 0x0000
sb2 ktbbhict @36 2
ub1 ktbbhflg @38 0x32 (NONE)
ub1 ktbbhfsl @39 0x00
ub4 ktbbhfnx @40 0x014008b0
struct ktbbhitl[], 24 bytes @44
struct ktbitxid, 8 bytes @44
ub2 kxidusn @44 0x000a
ub2 kxidslt @46 0x000b
ub4 kxidsqn @48 0x00004456
struct ktbituba, 8 bytes @52
ub4 kubadba @52 0x00c002d8
ub2 kubaseq @56 0x0175
ub1 kubarec @58 0x08
ub2 ktbitflg @60 0x8000 (KTBFCOM)
union _ktbitun, 2 bytes @62
sb2 _ktbitfsc @62 0
ub2 _ktbitwrp @62 0x0000
ub4 ktbitbas @64 0x0092cb3d
struct ktbbhitl[], 24 bytes @68
struct ktbitxid, 8 bytes @68
ub2 kxidusn @68 0x0008
ub2 kxidslt @70 0x0011
ub4 kxidsqn @72 0x000078b4
struct ktbituba, 8 bytes @76
ub4 kubadba @76 0x00c00397
ub2 kubaseq @80 0x017e
ub1 kubarec @82 0x1d
ub2 ktbitflg @84 0x8000 (KTBFCOM)
union _ktbitun, 2 bytes @86
sb2 _ktbitfsc @86 10
ub2 _ktbitwrp @86 0x000a
ub4 ktbitbas @88 0x00000000
BBED> p *kdbr[]
rowdata[]
-----------
ub1 rowdata[] @8176 0x3c ###状态为3c,标记已经删除 BBED> x/rncccccc
rowdata[] @8176
-----------
flag@8176: 0x3c (KDRHFL, KDRHFF, KDRHFD, KDRHFH)
lock@8177: 0x02
cols@8178: 0
BBED> dump /v offset 8176 count 20
File: /u01/app/oracle/oradata/orcl/test01.dbf (5)
Block: 2231 Offsets: 8176 to 8191 Dba:0x014008b7
-------------------------------------------------------
3c020202 c1020541 41414141 01069bcb l <...06 使用bbed提交delete的数据--01的更多相关文章
- 06 使用bbed修复delete的数据--01
06 使用bbed修复delete的数据--01 根据rowid查看数据文件和block号 SYS@ orcl ; ROWID ID NAME FILE# BLOCK# --------------- ...
- 06 使用bbed修复update的数据--01
场景1 表t3 SQL> select * from t3; ID NAME ---------- -------------------- aaa bbbb SQL> update t3 ...
- 【Oracle】使用bbed恢复delete的数据
表中的数据被delete之后并不会真正删除数据,而是打了一个删除标记,仅仅要还没有被覆盖就能够恢复回来. 实验步骤例如以下: SYS@ORCL>create table bbed_test(x ...
- 使用bbed编辑研究oracle数据块结构
bbed是随oracle软件公布的一款数据块查看和编辑工具,作为一款内部工具.bbed的功能很强大,可是假设使用不当可能给数据库造成无法挽回的损失.因此.我们建议在使用bbed改动数据块前备份被改动的 ...
- 提交JSON修改数据
提交JSON修改数据 设计目标: 1)可以一次性提交多个表的修改数据 2)跨语言.跨平台 { "deltas": [ { "table": "tuni ...
- 使用ajax提交的json数据,产生筹码问题
使用ajax提交的json数据,我们必须添加produces注解,如下所示.否则将会产生乱码 方法一:添加produces注解 @ApiOperation(value = "删除日志&quo ...
- WCF+Restfull服务 提交或获取数据时数据大小限制问题解决方案
近日在使用wcf的restfull架构服务时遭遇到了提交大数据的问题. 大数据包含两种情形: 1)单条数据量过大. 2)提交或获取的数据条数过多. 在测试时发现,默认设置下当单条JSON数据大于30K ...
- checkbox提交多组数据到action
突然想通过checkbox来提交多组数据到action,一时间想不起来怎么写,到网上流岚大婶们的笔迹之后,有了新发现! 方法一: 在action用一个String类型的变量来接受checkbox传过来 ...
- PHP 表单提交多行数据,显示多个submit
echo "<table border=1 class="imagetable" >"; //使用表格格式化数据echo "<for ...
随机推荐
- Response笔记
# 今日内容 1. HTTP协议:响应消息 2. Response对象 3. ServletContext对象 ## HTTP协议: 1. 请求消息:客户端发 ...
- 关于javaweb 项目 ssm框架 启动tomcat服务器同时启动一个socket服务
1.创建监听类 import javax.servlet.ServletContext; import javax.servlet.ServletContextEvent; import javax. ...
- 新建maven子模块 出现 Unable to read parent POM
新建maven子模块 出现 Unable to read parent POM错误 于是把pom.xml文件中的 中文字符全部删除 包括 注释 最后成功建立
- .net 正则表达式
string RegStr = @"^[0-9]*[1-9][0-9]*$"; if (Regex.IsMatch("待验证的字符串", RegStr)) { ...
- Linux学习--第六天--软件包
yum在线管理 管理的是rpm包,光盘里面都有 /etc/yum.repos.d下面有四个文件,对应网络yum源,光盘yum源等.如果需要用到哪个源,将其他三个源的enabled设置为0即可. |源配 ...
- 自动化运维工具-Ansible基础及Ansible Ad-Hoc
第58章 Ansible 目录 第58章 Ansible 一.Ansible基础概述 1.1)什么是Ansible 1.2)Ansible可以完成哪些功能呢?1.3)Ansible特点 1.4)Ans ...
- Java并发(具体实例)——几个例子
一步步优化页面渲染功能 本节将模拟一个简单的页面渲染功能,它的作用是将HTML页面绘 ...
- laplace transform 拉普拉斯变换
参考网址: 1. https://en.wikipedia.org/wiki/First-hitting-time_model 2. https://en.wikipedia.org/wiki/Lap ...
- 16 | “order by”是怎么工作的? 学习记录
<MySQL实战45讲>16 | “order by”是怎么工作的? 学习记录http://naotu.baidu.com/file/0be0e0acdf751def1c0ce66215e ...
- python笔记(3)---列表
lst = ["bob","jack","马云","马化腾","王健林"] del lst[1:3] ...