简而言之,flashback drop就是将已经被drop的表从recycebin中恢复回来,表被drop后,实际上只是改了个名,并没有释放空间。
1. 启用和禁用recyclebin:
ALTER SESSION SET recyclebin = OFF;
ALTER SYSTEM SET recyclebin = OFF;
ALTER SESSION SET recyclebin = ON;
ALTER SYSTEM SET recyclebin = ON;
2.使用recyclebin进行flashback drop
SQL> create table test tablespace users as select * from dba_objects;
Table created.
SQL> select object_name,original_name,operation,type,ts_name,createtime,droptime from recyclebin;
no rows selected
SQL> drop table test;
Table dropped.
SQL> select object_name,original_name,operation,type,ts_name,createtime,droptime from recyclebin;
OBJECT_NAME ORIGINAL_N OPERATION TYPE TS_NAME CREATETIME DROPTIME
------------------------------ ---------- --------- ---------- ---------- ------------------- -------------------
BIN$xRCsD3sxEqbgQAB/AQAqpw==$0 TEST DROP TABLE USERS 2012-07-18:09:42:38 2012-07-18:09:42:48
SQL> FLASHBACK TABLE test TO BEFORE DROP RENAME TO TEST_BAK;
Flashback complete.
SQL> select count(*) from test_bak;
COUNT(*)
----------
44940
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10972173/viewspace-738208/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10972173/viewspace-738208/