通過delete刪除資料後相當於放入**站,一般情況下可以找回;通過update更新資料後資料庫也會保留資料快照。閃回就是恢復指定時間的資料快照以達到恢復資料的目的。
根據步驟一查詢出資料快照,恢復資料自行決定(之前的資料都有了,咋恢復還不會嗎?)
一、查詢指定時間的資料快照
--1、查詢執行過sql語句,確定快照的時間
select r.first_load_time,r.sql_text,r.* from v$sqlarea r
where r.sql_text like '%about your sql%' order by r.first_load_time desc
--2、查詢基於指定時間的資料快照
select * from your_tablename as of timestamp
to_timestamp('2019-02-05 20:00:00', 'yyyy-mm-dd hh24:mi:ss');
--以當前時間為準,125分鐘之前的資料快照
select * from your_tablename as of timestamp sysdate - 125 / 1440
二、恢復資料
flashback時,如果不確定刪除的具體時間,在沒有太多操作這個表的情況下,閃回的時間稍微提前一點。
閃回表資料sql語句:
--1、啟動表的row movement特性
alter table your_tablename enable row movement;
--2、閃回指定時間的快照
flashback table your_tablename to timestamp
to_timestamp('2018-04-23 16:06:00','yyyy-mm-dd hh24:mi:ss');
--3、關閉表的row movement功能
alter table your_tablename disable row movement;
閃回資料表的sql語句:
--閃回表(通過truncate語句刪除的表無法閃回)
flashback table your_tablename to before drop;
oracle 恢復資料
備份資料 create table plan tem 20150812 as select from z fm cashplan 查詢操作錯誤的表的移動功能是否開啟 enable為開啟 select row movement,t.from user tables t where table name...
Oracle恢復資料
今天同事誤將oracle表中資料刪除 當時心裡就是涼涼 立刻上網搜尋有沒有恢復資料的方法 好在oracle的強大以及網路的發達 恩 廢話就這麼多 其實恢復的方法很簡單 首先,執行表記錄恢復 一般先根據時間進行查詢,查詢語句模式為 select from tb as of timestamp to t...
oracle使用update後閃回恢復資料
使用update後忘記加條件導致全表更新可以使用,閃回技術恢復資料。閃回技術 oracle提供了四種可供使用的閃回技術 閃回查詢,閃回刪除,閃回歸檔,閃回資料庫 一 閃回查詢 1.查詢某個操作是幾時執行的時間點 例查詢2020 11 11執行的update語句 select t.sql text,t...