利用Oracle閃回技術恢復誤運算元據

2022-03-18 12:58:37 字數 1145 閱讀 2698

在操作oracle的過程中,有的時候會誤操作表資料,例如更新或者刪除,如何找到誤操作前的資料呢?oracle提供了閃回技術,可以訪問過去某一時間的資料(如果時間太長或者操作過於頻繁有可能找不到),

舉例,建立表test_sj_salary,初始化指令碼

create table test_sj_salary

( id integer primary key,

name varchar2(100),

salary integer

);insert into test_sj_salary (id, name, salary)

values (1, '張三', 5000);

insert into test_sj_salary (id, name, salary)

values (2, '李四', 4000);

insert into test_sj_salary (id, name, salary)

values (3, '王五', 6000);

insert into test_sj_salary (id, name, salary)

values (4, '李六', 3500);

commit;

插入了4條資料,如圖

操作,例如刪除張三的資料

delete test_sj_salary where name='張三';

如何找回刪除張三前的資料呢?使用這種方法找回

select * 

from test_sj_salary

as of timestamp(systimestamp - interval '1' minute);

其中minute前面的數字根據需要可以修改

執行後能夠查詢到原來的資料

oracle閃回技術恢復誤運算元據

運算元據庫時,有時會不小心誤操作,比如執行了一些有問題的sql,導致破壞了資料,需要恢復 或者有時場景需要,要把整個表恢復到某個時間段。oracle中可以用閃回技術實現。1.原資料表的資料 做增刪改操作 對jf test2表做增刪改後 select 確定誤操作的大致時間點,取出該時間點 jf tes...

Oracle利用閃回恢復誤刪資料

相信不少可愛的程式猿都拜讀過 資料庫從刪庫到跑路 一書,我們常常會因為需求的無限變更而氣得發瘋,從而使出畢生所學,刪庫!可惜,這招威力過猛,殺敵一千自損八百,通常跑路還學不會,最後都自食惡果。好了,回歸主題,倘若真的手誤刪除了資料怎麼辦?第一時間請冷靜下來,別方,還有補救的方法。在oracle資料庫...

oracle閃回技術

1,閃回資料庫到之前某時間點 在安裝時需要開放閃回功能 不支援表空間刪除 select name from v database 看是否開啟閃回功能 select flashback on,name from v database select name from v bgprocess where...