Oracle闪回技术之三 Oracle 11g Oracle RecycleBin (回收站)管理一

Oracle的回收站也要定期维护,否则随着时间的增长,有可能会占用你很大的磁盘空间。管理回收站主要包括:启用和禁用回收站、查看回收站中的信息和清除回收站中的对象。

1、启用和禁用回收站

oracle系统默认启用回收站。如果要手工控制回收站是否启用,可以通过修改RECYCLEBIN参数。首先通过SHOW PARAMETER RECYCLEBIN命令检查(注意也必须是管理员用户才可以)当前回收站是否启用。

SQL> show parameter recyclebin;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
recyclebin                           string      on

Value值是on说名回收站是启用状态;

关闭回收站:

SQL> alter session set recyclebin=off;

会话已更改。

2、查看回收站中的信息

两种:1、dba通过数据字典dba_recyclebin来查看2、普通用户通过show recyclebin来查看

SQL> desc user_recyclebin;
 名称                                      是否为空? 类型
 ----------------------------------------- -------- ----------------------------

 OBJECT_NAME                               NOT NULL VARCHAR2(30)
 ORIGINAL_NAME                                      VARCHAR2(32)
 OPERATION                                          VARCHAR2(9)
 TYPE                                               VARCHAR2(25)
 TS_NAME                                            VARCHAR2(30)
 CREATETIME                                         VARCHAR2(19)
 DROPTIME                                           VARCHAR2(19)
 DROPSCN                                            NUMBER
 PARTITION_NAME                                     VARCHAR2(32)
 CAN_UNDROP                                         VARCHAR2(3)
 CAN_PURGE                                          VARCHAR2(3)
 RELATED                                   NOT NULL NUMBER
 BASE_OBJECT                               NOT NULL NUMBER
 PURGE_OBJECT                              NOT NULL NUMBER
 SPACE                                              NUMBER

3、恢复相依对象

SQL> create table tb_index_test(id number,content varchar2(30));

表已创建。

SQL> create index index_id on tb_index_test(id);

索引已创建。

SQL> drop table tb_index_test;

表已删除。

SQL> show recyclebin;
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------

TB_INDEX_TEST    BIN$gf1yHCeHQYaV7metr4X4kg==$0 TABLE        2013-01-27:09:59:14

可见没有与索引相关的信息,下面我们用一条sql来查看删除的表和索引信息,而上面的语句只能查询到表的信息。

SQL> select original_name,object_name,type,droptime from user_recyclebin;

ORIGINAL_NAME                    OBJECT_NAME
-------------------------------- ------------------------------
TYPE                      DROPTIME
------------------------- -------------------
TB_INDEX_TEST                    BIN$gf1yHCeHQYaV7metr4X4kg==$0
TABLE                     2013-01-27:09:59:14

INDEX_ID                         BIN$MSHanVPZRluFmcNkmb/FYw==$0
INDEX                     2013-01-27:09:59:14

posted @ 2013-02-20 17:44  jingping  阅读(324)  评论(0编辑  收藏  举报