閃回表技術
我們想返回某個時間點(timestamp)或者scn的資料狀態,這時候,我們可以透過閃回表技術幫忙解決這個問題。
此處,我們只透過時間來做一次閃回表:
進入scoot使用者建立的test1表,並顯示時間,檢視此時狀態的資料,
conn scott/tiger0520
SQL> set time on
22:12:25 SQL>
22:12:25 SQL> select * from test1;
no rows selected
插入一條資料,提交併插敘此時的資料,22:19:50 SQL> insert into test1 values(10,'ACCOUNTING','NEW YORK');
1 row created.
22:19:55 SQL> commit;
Commit complete.
22:20:01 SQL> select * from test1;
DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
再插入一條資料,提交併查詢此時的資料,
22:20:21 SQL> insert into test1 values(20,'RESEARCH','DALLAS');
1 row created.
22:20:37 SQL> commit;
Commit complete.
22:20:45 SQL> select * from test1;
DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
此時,發現插入資料錯誤,只想插入上述的第一條資料,這時馬上閃回,
22:20:56 SQL> flashback table test1 to timestamp
22:28:33 2 to_timestamp('2016-09-29 22:20:37','yyyy-mm-dd hh24:mi:ss');
flashback table test1 to timestamp
*
ERROR at line 1:
ORA-08189: cannot flashback the table because row movement is not enabled
此時發現報錯。因為閃回表時,資料的rowid已經發生了改變,一般情況下,資料庫不允許隨意改變表資料的rowid,
這時候,我們已改用alter table test1 enable row movement,允許改動rowid,
alter table test1 enable row movement;
再次執行閃回表,發現,資料恢復到時間為22:20:37的資料
22:31:09 SQL> flashback table test1 to timestamp
22:31:23 2 to_timestamp('2016-09-29 22:20:37','yyyy-mm-dd hh24:mi:ss');
Flashback complete.
22:31:40 SQL> select * from test1;
DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
閃回表成功。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31392094/viewspace-2125774/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 閃回技術二:閃回表
- 閃回技術一:閃回查詢
- Flashback閃回技術
- Oracle閃回技術之閃回資料庫Oracle資料庫
- 閃回刪除技術:
- 閃回版本查詢技術:
- 閃回技術全瞭解
- oracle 閃回技術簡介Oracle
- oracke閃回技術總結
- Oracle閃回技術 為Oracle閃回配置資料庫Oracle資料庫
- 【備份恢復】 閃回技術之閃回刪除
- Oracle 閃回技術 概覽 資料庫閃回功能Oracle資料庫
- 閃回表、閃回查詢
- 【備份恢復】閃回技術之閃回版本查詢
- Oracle 11G 閃回技術 使用Oracle閃回查詢Oracle
- Oracle 11G 閃回技術 使用閃回版本查詢Oracle
- 閃回技術查詢資料
- Oracle閃回技術--Flashback Version QueryOracle
- flashback閃回技術應用解析
- 基本閃回查詢和閃回表
- Oracle 11G 閃回技術 閃回版本查詢和閃回事務查詢Oracle
- 閃回查詢之閃回表查詢
- 【備份恢復】 閃回技術之閃迴歸檔
- Oracle 11G 閃回技術概覽Oracle
- Oracle Database 11g閃回技術flashbackOracleDatabase
- 【Flashback】使用Flashback Drop技術閃回被DROP表的指定版本資料
- [重慶思莊每日技術分享]-閃回表時報錯ORA-38305
- Oracle 11G 閃回技術 使用Oracle閃回事務查詢Oracle
- 【備份恢復】 閃回技術之閃回事務處理查詢
- (f)--閃回恢復區---實踐2---閃回表(閃回DML部分資料會用到閃回查詢)
- Oracle閃回誤刪的表Oracle
- Oracle 11g 閃回表Oracle
- Oracle閃回技術 概覽 應用程式開發功能Oracle
- OCP課程51:管理II之使用閃回技術1
- OCP課程52:管理II之使用閃回技術2
- 表閃回操作及解決閃回表時出現的ORA-08189故障
- Backup And Recovery User's Guide-閃回技術基本概念GUIIDE
- Backup And Recovery User's Guide-使用閃回表來回退一個表-執行閃回表操作GUIIDE