28_bbed实战(1)_delete操作恢复
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,下面的示例演示如何恢复已删除的行。当Oracle中的行被删除时,数据实际上并没有被删除。行被简单地标记为已删除,空闲空间计数器和指针也相应地进行了调整。行状态存储在行头中,行头占用每一行的前几个字节。
千家信息网最后更新 2026年11月01日28_bbed实战(1)_delete操作恢复
下面的示例演示如何恢复已删除的行。当Oracle中的行被删除时,数据实际上并没有被删除。行被简单地标记为已删除,空闲空间计数器和指针也相应地进行了调整。行状态存储在行头中,行头占用每一行的前几个字节。
行头由Row Flag、Lock Byte(ITL entry) and Column Count组成。行头由一个字节大小的 the Row Flag开始,它持有一个位掩码来显示行状态。位掩码解码如下:
因此,适合单个块的列,没有被链接、迁移或集群表的一部分,也没有被删除,将具有以下属性:
- Head of Row Piece
- First Data Piece
- Last Data Piece
SQL> alter system dump datafile 5 block 1551;System altered.Block header dump: 0x0140060f Object id on Block? Y seg/obj: 0x15720 csc: 0x00.111e90 itc: 2 flg: E typ: 1 - DATA brn: 0 bdba: 0x1400608 ver: 0x01 opc: 0 inc: 0 exflg: 0 Itl Xid Uba Flag Lck Scn/Fsc0x01 0x0002.00a.0000039c 0x00c000fd.00c0.13 --U- 1 fsc 0x0000.00111e920x02 0x0000.000.00000000 0x00000000.0000.00 ---- 0 fsc 0x0000.00000000bdba: 0x0140060fdata_block_dump,data header at 0x7fa17e07f264===============tsiz: 0x1f98hsiz: 0x14pbl: 0x7fa17e07f264 76543210flag=--------ntab=1nrow=1frre=-1fsbo=0x14fseo=0x1f8davsp=0x1f79tosp=0x1f790xe:pti[0]nrow=1offs=00x12:pri[0]offs=0x1f8dblock_row_dump:tab 0, row 0, @0x1f8dtl: 11 fb: --H-FL-- lb: 0x1 cc: 1col 0: [ 7] 78 78 78 73 74 61 72end_of_block_dump当一行被删除时,行标志被更新,第5( 16)位被设置为高。这意味着对于一个典型的行,标志值现在是32 + 16 +8 +4=60或0x3c。 在下面的示例中,我们从表中删除orastar的记录。然后使用find命令,查找被删除的行,并转储块的内容:
BBED> find /c star File: /oradata/epmsn/hsql01.dbf (5) Block: 1551 Offsets: 8184 to 8191 Dba:0x0140060f------------------------------------------------------------------------ 73746172 0106921e <32 bytes per line>BBED> p *kdbr[0] rowdata[0]----------ub1 rowdata[0] @8177 0x2cBBED> d /v dba 5,1551 offset 8177 File: /oradata/epmsn/hsql01.dbf (5) Block: 1551 Offsets: 8177 to 8191 Dba:0x0140060f------------------------------------------------------- 2c010107 78787873 74617201 06921e l ,...xxxstar.... <16 bytes per line>BBED> d /v dba 5,1551 offset 8177 File: /oradata/epmsn/hsql01.dbf (5) Block: 1551 Offsets: 8177 to 8191 Dba:0x0140060f------------------------------------------------------- 2c010107 78787873 74617201 06921e l ,...xxxstar.... <16 bytes per line>************************************************删除数据SQL> select * from hsql.test4;CONS_NAME------------------------------xxxstarSQL> delete from hsql.test4;1 row deleted.SQL> commit;Commit complete.SQL> select * from hsql.test4;no rows selected********************************end 删除数据BBED> d /v dba 5,1551 offset 8177 File: /oradata/epmsn/hsql01.dbf (5) Block: 1551 Offsets: 8177 to 8191 Dba:0x0140060f------------------------------------------------------- 3c020107 78787873 74617201 06a028 l <...xxxstar...( <16 bytes per line>BBED> modify /x 2c offset 8177 File: /oradata/epmsn/hsql01.dbf (5) Block: 1551 Offsets: 8177 to 8191 Dba:0x0140060f------------------------------------------------------------------------ 2c020107 78787873 74617201 06a028 <32 bytes per line>BBED> sum dba 5,1551 applyCheck value for File 5, Block 1551:current = 0x9ec9, required = 0x9ec9*********************查询un-delete的数据SQL> select * from hsql.test4;no rows selectedSQL> alter system flush buffer_cache;System altered.SQL> select * from hsql.test4;CONS_NAME------------------------------xxxstarSQL>
数据
行头
一行
命令
字节
标志
状态
示例
面的
典型
内容
单个
地标
大小
实际
实际上
属性
意味
指针
标记
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技公司简介
江苏根荣互联网科技
互联网科技公司华为
A股互联网金融科技公司
科技与互联网
今日互联网科技
科技信息互联网
关于新基建和互联网科技
以房互联网科技
上游互联网科技
互联网金融监管科技
云创客互联网科技公司
互联网科技项目计划书材料类
阿大互联网科技有限公司
互联网相关科技技术
上海同邻互联网科技有限公司规模
吉林省码上互联网科技电话
云南互联网科技学费
唐山双旺合互联网科技产业园
盐城市攀科互联网科技有限公司
美国互联网保险保险科技
互联网科技的英文
兼蜜互联网科技
深圳艾佳互联网科技
成都狮子座互联网科技
济南和联互联网科技有限公司
昭通云南众福互联网科技有限公司
互联网科技有哪些公司
朱啸虎曾投资哪些互联网科技企业
杭州披云加互联网科技有限公司