兩種閃回查詢的使用實驗
SQL>select * from test;
1
2
一、按照SCN進行恢復
SQL>select * from sys.smon_scn_time order by time_dp desc;
30970780
scn 與時間的對應關係:每隔5分鐘,系統產生一次系統時間標記與scn的匹配並存入sys.smon_scn_time表
SQL>delete from test;
SQL>select * from test as of scn 30970780
1
2
可以看到在這個檢查點的錶的歷史情況
SQL>insert into test select * from test as of scn 30970780
恢復test該時間點的資料
二、按照時間點恢復
為了看到更準確的時間點,可以建立一個臨時表用於檢視實驗的時間點:
create table rec_date(date_scn date);
刪除之前存入時間:
SQL>insert into rec_date select sysdate from dual;
使用儲存的時間點進行恢復:
DECLARE
Restore_scn date;
BEGIN
Select date_scn into restore_scn from rec_date;
Dbms_flashback.enable_at_time (restore_scn);
END;
Restore_scn date;
BEGIN
Select date_scn into restore_scn from rec_date;
Dbms_flashback.enable_at_time (restore_scn);
END;
/
備註:
1、SMON_SCN_TIME表基礎知識(來自惜分飛的http://www.xifenfei.com/2754.html)
(1)、作用:由smon收集scn和time對映關係,用於flashback/查詢scn和time對應關係等操作。
(2)、保留條數:官方文件給出說明instance number N * 12 times per hour * 24 hours * 5 days = 1440N rows,因為每次的時間間隔不是非常準確的5分鐘,所以在具體的條數在實際生產環境中有一定的出入。
(3)、採集和刪除:smon程式沒5分鐘採集一次插入到SMON_SCN_TIME表中,同時將刪除歷史資料(超過5天前資料)。
(4)、當查詢scn對應time,如果scn超過SMON_SCN_TIME表範圍,將提示錯誤;或者查詢time對應的scn,如果超過範圍也同樣報錯。
(5)、scn計算方法SCN=(SCN_WRP * 4294967296) + SCN_BAS
(6)、對於drop的表,閃回查詢不能恢復。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7192724/viewspace-1127799/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【閃回特性之閃回查詢】使用閃回查詢(select as of)
- 閃回查詢之閃回版本查詢
- 閃回查詢之閃回表查詢
- Oracle閃回查詢,閃回版本查詢與閃回事務查詢的使用區別總結Oracle
- 閃回表、閃回查詢
- 閃回查詢
- 閃回(關於閃回查詢)
- 閃回刪除、閃回查詢
- oracle的閃回查詢Oracle
- oracle的回閃查詢Oracle
- 基本閃回查詢和閃回表
- 閃回技術一:閃回查詢
- 閃回版本查詢與閃回事務查詢
- oracle閃回查詢Oracle
- 閃回查詢(轉)
- 閃回查詢(1)
- oracle 閃回查詢Oracle
- Oracle 11G 閃回技術 使用Oracle閃回查詢Oracle
- Oracle 11G 閃回技術 使用閃回版本查詢Oracle
- DM7閃回與閃回查詢
- 使用閃回查詢備份資料
- 回閃查詢查詢刪除的資料
- Oracle 11G 閃回技術 閃回版本查詢和閃回事務查詢Oracle
- Flashback Query閃回查詢
- 閃回查詢(undo sql)SQL
- 閃回版本查詢操作
- [閃回特性之閃回版本查詢]Flashback Version Query
- (f)--閃回恢復區---實踐2---閃回表(閃回DML部分資料會用到閃回查詢)
- 使用oracle 閃回查詢找回誤更新的資料Oracle
- DM8 閃回查詢
- 閃回版本查詢技術:
- 使用dbms_flashback工具包實現閃回查詢功能
- 使用閃回查詢恢復誤刪除的資料
- 【備份恢復】閃回技術之閃回版本查詢
- oracle閃回版本查詢學習Oracle
- 閃回技術查詢資料
- Oracle 11g 閃回查詢Oracle
- 閃回版本查詢(Flashback Version Query)