ORACLE的一些操作收集

drop table table_name purge

    功能:删除表直接删除,即会清理表的空间,而drop table table_name 会把表放入回收站。

    举例:

create table tmp_a as 
select 'a' as a,'b' as b from dual;     

select * from tmp_a;

drop table tmp_a;

表删除后,就可以在user_recyclebin中看到相应删除的表

select object_name, original_name, operation, type from user_recyclebin;

  OBJECT_NAME            ORIGINAL_NAME     OPERATION      TYPE
1 BIN$l+0x2YskHdXgUwIAEawyIw==$0 YXA_TEST_TARGET_  TABLE DROP     TABLE
2 BIN$mPCmdjU8bqrgUwIAEayUTw==$0 TMP_A             DROP           TABLE

这里就可以看到删除的tmp_a表

此时可以通过闪回区恢复删除的数据

 flashback table tmp_a to before;                --直接恢复表数据

 flashback table tmp_a to before drop rename to tmp_b;    --恢复数据并更改表名;

清理回收站数据:

清除指定表:purge table<table_name>;
清除当前用户的回收站:purge recyclebin;
清除所有用户的回收站:purge dba_recyclebin;

这时再通过select object_name, original_name, operation, type from user_recyclebin;就查不到回收站的数据了。

posted @ 2019-12-05 15:28  RecursionHs  阅读(164)  评论(0)    收藏  举报