设为首页 收藏本站
查看: 873|回复: 0

[经验分享] 浅谈Oracle闪回删除表限制

[复制链接]

尚未签到

发表于 2016-7-25 08:54:11 | 显示全部楼层 |阅读模式
DSC0000.jpg
Oracle 10g开始提供了类似windows系统的回收站功能,用户在删除表的时候会不是直接删除,而是移动到回收站中,如果需要从回收站中取回原来的表,可以使用闪回删除表的特性,迅速的找回被删除的表,而不需要从备份中导入原有的表!但这个回收站功能也是有前提的,不是在任何情况下都可以使用闪回删除表特性,总结下,在10g中,下面几种场景表不能flashback删除,至于11g是否有改进,感兴趣的朋友可以参照本文的方法进行测试下!顺带说下,回收站采取fifo,先进先出的机制!例如在回收站有两张同样名称的表,闪回删除的时候根据删除时间的先后顺序来觉得先闪回哪张表,因而闪回删除表命令提供了rename to选项;

1:回收站功能未开启(这个就不用测试了)
2:表的存储表空间不能为system
3: 表被删除的时候不能带purge参数
4:存在空间压力的时候
5:表上面启用了细粒度审计
6:表启用了VPD

一:测试表空间存储为system的闪回删除
1.1 创建测试用户,并赋予相应的权限,开启数据库的回收站功能

[oracle@dg53 ~]$ sqlplus /nolog  
SQL*Plus: Release 10.2.0.1.0 - Production on Thu Feb 16 16:48:44 2012  
Copyright (c) 1982, 2005, Oracle.  All rights reserved.  

SQL> conn /as sysdba  
Connected.  

SQL> create user test identified by "123456" default tablespace users account unlock;  
User created.  

SQL> grant resource,connect to test;  
Grant succeeded.  

SQL> show parameter recyclebin;  

NAME                                 TYPE        VALUE  
------------------------------------ ----------- ------------------------------  
recyclebin                           string      on
1.2 使用test用户新建2张表,一张存储在system表空间

Connected.  
SQL> create table drop_1 (a number) tablespace system;  
Table created.  

SQL> insert into drop_1 values (1);  
1 row created.  

SQL> commit;  
Commit complete.  

SQL> create table drop_2 as select * from drop_1;  
Table created.  

SQL> select * from tab;  

TNAME                          TABTYPE  CLUSTERID  
------------------------------ ------- ----------  
DROP_1                         TABLE
DROP_2                         TABLE
1.3 分别删除2张表,不带purge参数,查看回收站只存在drop_2表,该表的存储表空间为users,由此证明表空间存储为system的表是不可以被闪回删除的

SQL> drop table drop_1;  
Table dropped.  

SQL> drop table drop_2;  
Table dropped.  

SQL> show recyclebin;  
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------  
DROP_2           BIN$uRD2vL3ZVNjgQKjANQEaNg==$0 TABLE        2012-02-16:16:53:36  

SQL> select object_name,original_name from user_recyclebin;  

OBJECT_NAME                    ORIGINAL_NAME  
------------------------------ --------------------------------  
BIN$uRD2vL3ZVNjgQKjANQEaNg==$0 DROP_2  

SQL> flashback table drop_2 to before drop;  
Flashback complete.
1.4 测试使用sys用户删除drop_2表,是否可以成功闪回删除

SQL> conn /as sysdba  
Connected.  
SQL> show user;  
USER is "SYS"
SQL> drop table test.drop_2;  
Table dropped.  

SQL> conn test/123456  
Connected.  
SQL> select * from tab;  

TNAME                          TABTYPE  CLUSTERID  
------------------------------ ------- ----------  
BIN$uRImQA9UYD7gQKjANQEdrg==$0 TABLE

SQL> show recyclebin;  
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------  
DROP_2           BIN$uRImQA9UYD7gQKjANQEdrg==$0 TABLE        2012-02-16:17:06:54  

SQL> flashback table drop_2 to before drop;  
Flashback complete

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-248913-1-1.html 上篇帖子: 查看oracle中所有用户信息 下篇帖子: oracle忘记sys/system/scott用户的…
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表