利用BBED恢复UPDATE修改前的值
Jun 07, 2016 pm 03:57 PM实验过程如下: 1、创建表guo_test1 gyj@PROD create table guoyJoe_t1(id int,name varchar2(10));Table created.gyj@PROD insert into guoyJoe_t1 values(1,guoyJoe);1 row created.gyj@PROD insert into guoyJoe_t1 values(1,tom);1 row created.gyj@PROD
实验过程如下:
1、创建表guo_test1
gyj@PROD> create table guoyJoe_t1(id int,name varchar2(10)); Table created. gyj@PROD> insert into guoyJoe_t1 values(1,'guoyJoe'); 1 row created. gyj@PROD> insert into guoyJoe_t1 values(1,'tom'); 1 row created. gyj@PROD> COMMIT; Commit complete.
gyj@PROD> select name,dbms_rowid.rowid_relative_fno(rowid) file#,dbms_rowid.rowid_block_number(rowid) block#,dbms_rowid.rowid_row_number(rowid) row# from guoyJoe_t1; NAME FILE# BLOCK# ROW# ---------- ---------- ---------- ---------- guoyJoe 5 20877 0 tom 5 20877 1
3、刷数据缓存
gyj@PROD> alter system flush buffer_cache; System altered.
4、利用BBED找到这行记录(修改前的值:guoyJoe)
BBED> BBED> set file 5 block 20877 FILE# 5 BLOCK# 20877
5、发生UPDATE语句,把原来的值guoyJoe修改成oracledba
gyj@PROD> update guoyJoe_t1 set name='oracledba' where name='guoyJoe'; 1 row updated. gyj@PROD> commit; Commit complete
6、刷数据缓存
gyj@PROD> alter system flush buffer_cache; System altered.
7、利用BBED找到这行被修改后的记录(修改后的值上:oracledba)
BBED> set file 5 block 20877 FILE# 5 BLOCK# 20877
8、对比修改前与修改后的数据
BBED> d /v offset 8174 count 16 File: /u01/app/oracle/oradata/PROD/tp01.dbf (5) Block: 20877 Offsets: 8174 to 8189 Dba:0x0140518d ------------------------------------------------------- 2c000202 c1020767 756f794a 6f650106 l ,...á..guoyJoe.. BBED> d /v offset 8148 count 16 File: /u01/app/oracle/oradata/PROD/tp01.dbf (5) Block: 20877 Offsets: 8148 to 8163 Dba:0x0140518d ------------------------------------------------------- 2c010202 c102096f 7261636c 65646261 l ,...á..oracledba
9、开始恢复
10、恢复成功(oracledba--->guoyJoe)
gyj@PROD> alter system flush buffer_cache; System altered. gyj@PROD> select name,dbms_rowid.rowid_relative_fno(rowid) file#,dbms_rowid.rowid_block_number(rowid) block#,dbms_rowid.rowid_row_number(rowid) row# from guoyJoe_t1 where id=1; NAME FILE# BLOCK# ROW# ---------- ---------- ---------- ---------- guoyJoe 5 20877 0 tom 5 20877 1
实际上用BBED恢复UPDATE前的值不难,主要是要了解内部原理和块格式

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Comment changer le nom personnel dans le groupe sur DingTalk_Comment modifier le nom personnel dans le groupe sur DingTalk

Comment restaurer l'étincelle de discussion sur TikTok

Des astuces pour modifier le temps de sommeil de Win10 révélées

Comment restaurer les commentaires supprimés sur Xiaohongshu ? Des conseils pour les commentaires supprimés ?

Comment récupérer des notes supprimées sur un téléphone Xiaomi

Comment modifier l'emplacement de l'adresse des produits publiés sur Xianyu

Solution à l'utilisation élevée du processeur de la télémétrie de compatibilité Microsoft
