閃回版本查詢操作
SQL> create table t4 as select object_id, object_type,created, status from dba_o
bjects where rownum<3000;
SQL> select count(*) from t4;
COUNT(*)
----------
2999
SQL> select versions_xid, versions_starttime, versions_endtime, versions_operation, object_id from t4 versions between timestamp minvalue and maxvalue;
SQL> select undo_sql from flashback_transaction_query where xid=&versions_xid;
(問什麼有時undo_sql裡面沒有內容?是因為row_movement是disable嗎?)
做個試驗:
SQL> alter table t4 ENABLE row movement;
再查還是一樣,只有在update時才可以看到undo_sql語句。而delete後,欄位OPERATION的值為UNKOWN。 可見如果要是delete只有用flashback table的方法來做了。
例如
SQL> flashback table t4 to timestamp to_timestamp('2008-1-3 19:32:56','YYYY-MM-DD HH24:MI:SS');
一些注意:
1. undo_retention是個no gurantee 的限制,如果空間充足,在這個時間內undo資訊會保留,但如果空間不足時,即使沒到undo_retention時間,資料一樣會被取代;
2. undo_retention可以為0,此時表示沒有時間限制,只要空間夠用,data可以一直存放。
3. row_movement, 是當行發生變化時,rowid會自動變化以適應其變化。dba_tables.row_movement ,看看是enable還是disable. 而只要flashback table,就必須將row movement設為ENABLE.
bjects where rownum<3000;
SQL> select count(*) from t4;
COUNT(*)
----------
2999
SQL> select versions_xid, versions_starttime, versions_endtime, versions_operation, object_id from t4 versions between timestamp minvalue and maxvalue;
SQL> select undo_sql from flashback_transaction_query where xid=&versions_xid;
(問什麼有時undo_sql裡面沒有內容?是因為row_movement是disable嗎?)
做個試驗:
SQL> alter table t4 ENABLE row movement;
再查還是一樣,只有在update時才可以看到undo_sql語句。而delete後,欄位OPERATION的值為UNKOWN。 可見如果要是delete只有用flashback table的方法來做了。
例如
SQL> flashback table t4 to timestamp to_timestamp('2008-1-3 19:32:56','YYYY-MM-DD HH24:MI:SS');
一些注意:
1. undo_retention是個no gurantee 的限制,如果空間充足,在這個時間內undo資訊會保留,但如果空間不足時,即使沒到undo_retention時間,資料一樣會被取代;
2. undo_retention可以為0,此時表示沒有時間限制,只要空間夠用,data可以一直存放。
3. row_movement, 是當行發生變化時,rowid會自動變化以適應其變化。dba_tables.row_movement ,看看是enable還是disable. 而只要flashback table,就必須將row movement設為ENABLE.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/661919/viewspace-86422/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 閃回查詢之閃回版本查詢
- 閃回版本查詢與閃回事務查詢
- 閃回版本查詢技術:
- Oracle閃回查詢,閃回版本查詢與閃回事務查詢的使用區別總結Oracle
- [閃回特性之閃回版本查詢]Flashback Version Query
- Oracle 11G 閃回技術 閃回版本查詢和閃回事務查詢Oracle
- 閃回查詢之閃回表查詢
- oracle閃回版本查詢學習Oracle
- 閃回版本查詢(Flashback Version Query)
- 【閃回特性之閃回查詢】使用閃回查詢(select as of)
- 閃回表、閃回查詢
- 【備份恢復】閃回技術之閃回版本查詢
- Oracle 11G 閃回技術 使用閃回版本查詢Oracle
- Oracle 11g 閃回版本查詢Oracle
- 聊聊閃回版本查詢Flashback Version Query
- 閃回查詢
- 閃回(關於閃回查詢)
- 閃回刪除、閃回查詢
- 10g新特性——閃回版本查詢
- 基本閃回查詢和閃回表
- 閃回技術一:閃回查詢
- oracle閃回查詢Oracle
- 閃回查詢(轉)
- 閃回查詢(1)
- oracle 閃回查詢Oracle
- 學習Oracle10g:閃回版本查詢Oracle
- DM7閃回與閃回查詢
- Flashback Query閃回查詢
- oracle的閃回查詢Oracle
- oracle的回閃查詢Oracle
- 閃回查詢(undo sql)SQL
- Oracle Database 10g新特性-閃回版本查詢OracleDatabase
- DM8 閃回查詢
- 回閃查詢查詢刪除的資料
- 誤操作經歷,truncate導致閃回查詢失敗
- Oracle 11G 閃回技術 使用Oracle閃回查詢Oracle
- 閃回技術查詢資料
- Oracle 11g 閃回查詢Oracle