Oracle-誤刪資料恢復(短期內)

like052629發表於2015-01-23

SQL> show parameter undo

 

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

undo_management                      string      AUTO

undo_retention                       integer     900

undo_tablespace                      string      UNDOTBS1


誤刪資料後,立刻發現,採用方式:

根據時間恢復:

select count(1) from test;  --0

insert into test

select * from test as of timestamp to_timestamp('2015-01-22 15:14:00','yyyy-mm-dd hh24:mi:ss');

select count(1) from test;  --5070

根據SCN恢復:

獲取當前SCN號:select dbms_flashback.get_system_change_number fscn from dual;

delete from test;

commit;

select count(1) from test; --0

insert into test

select * from test as of scn 11431740649396;

select count(1) from test; --5070


以上方式恢復資料,需要時間在undo_retention之內,且,undo未被重用,如果不存在,且有備份,可以在測試庫將備份恢復出來。


SCNtimestamp之間的轉換:

select scn_to_timestamp(11431740649396) from dual;

select timestamp_to_scn(to_timestamp('2015-01-22 15:14:25','yyyy-mm-dd hh24:mi:ss')) from dual;


資料塊未被覆蓋也可以使用bbed恢復(少量資料),慎用(還沒看明白)。


表被drop

SQL> drop table test;

 

Table dropped

 

SQL> select count(1) from test;

 

select count(1) from test

 

ORA-00942: 表或檢視不存在

 --檢視回收站資訊

SQL> select * from user_recyclebin;

 

OBJECT_NAME                    ORIGINAL_NAME                    OPERATION TYPE                      TS_NAME                        CREATETIME

BIN$DTmXjQWbF3rgUKjAHwA3Gg==$0 TEST                             DROP      TABLE                     RTMS_TS                        2015-01-20:15:18:20


閃回表:

SQL> flashback table test to before drop;

Done

 

SQL> select count(1) from test;

  COUNT(1)

----------

      5070


SQL> drop table test;

Table dropped

--閃回表並重新命名

SQL> flashback table test to before drop rename to test_1; 

Done

 

SQL> select count(1) from test;

select count(1) from test

ORA-00942: 表或檢視不存在

 

SQL> select count(1) from test_1;

  COUNT(1)

----------

      5070



如果刪除時間過程但有備份且開啟歸檔:可以在測試庫中根據scn或時間點還原資料,然後將還原後的資料匯入到生產中。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28258625/viewspace-1411953/,如需轉載,請註明出處,否則將追究法律責任。

相關文章