Oracle Purge和drop的区别

php中文网
发布: 2016-06-07 17:10:22
原创
1347人浏览过

Oracle 10g提供的flashback drop 新特性为了加快用户错误操作的恢复,Oracle10g提供了flashback drop的功能。而在以前的版本中,

网钛淘拍CMS(TaoPaiCMS) V1.60
网钛淘拍CMS(TaoPaiCMS) V1.60

2013年07月06日 V1.60 升级包更新方式:admin文件夹改成你后台目录名,然后补丁包里的所有文件覆盖进去。1.[新增]后台引导页加入非IE浏览器提示,后台部分功能在非IE浏览器下可能没法使用2.[改进]淘客商品管理 首页 列表页 内容页 的下拉项加入颜色来区别不同项3.[改进]后台新增/修改淘客商品,增加淘宝字样的图标和天猫字样图标改成天猫logo图标4.[改进]为统一名称,“分类”改

网钛淘拍CMS(TaoPaiCMS) V1.60 0
查看详情 网钛淘拍CMS(TaoPaiCMS) V1.60

Purge和drop的区别:

Oracle 10g提供的flashback drop 新特性为了加快用户错误操作的恢复,Oracle10g提供了flashback drop的功能。而在以前的版本中,除了不完全恢复,通常没有一个好的解决办法。

Oracle 10g的flashback drop功能,允许你从当前数据库中恢复一个被drop了的对象,在执行drop操作时,现在Oracle不是真正删除它,而是将该对象自动将放入回收站。对于一个对象的删除,其实仅仅就是简单的重令名操作。

所谓的回收站,是一个虚拟的容器,,用于存放所有被删除的对象。在回收站中,被删除的对象将占用创建时的同样的空间,你甚至还可以对已经删除的表查询,也可以利用flashback功能来恢复它,这个就是flashback drop功能。

回收站内的相关信息可以从recyclebin/user_recyclebin/dba_recyclebin等视图中获取,或者通过SQL*Plus的show recyclebin 命令查看。

 

C:\>sqlplus /nolog

SQL*Plus: Release 10.1.0.2.0 - Production on 星期三 6月 1 10:09:32 2005

Copyright (c) 1982, 2004, Oracle.  All rights reserved.

SQL> conn tiger/tiger@xe

已连接。

SQL> select count(*) from goodsinfo1;

  COUNT(*)

----------

     38997

SQL> drop table goodsinfo1;

表已删除。

SQL> commit;

提交完成。

SQL> select count(*) from goodsinfo1;

select count(*) from goodsinfo1

                     *

第 1 行出现错误:

ORA-00942: table or view does not exist

 

啊!天啊!我删错了表,怎么办好呢?啊!将数据库闪回到刚才删除表前的时间就可以啦。

不行!那其它的操作也会一齐闪回。现在可以用flashback drop的功能了。

 

SQL> show recyclebin;

ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME

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

GOODSINFO1       BIN$RFG58GsfRheKlVKnWw8KKQ==$0 TABLE        2005-06-01:10:11:03

 

SQL> FLASHBACK TABLE goodsinfo1 TO BEFORE DROP;

 

闪回完成。

 

SQL> select count(*) from goodsinfo1;

  COUNT(*)

----------

     38997

 

看看已删除的表回来了。真的谢天谢地啊!

 

SQL> show recyclebin;

 

如果想要彻底清除这些对象,可以使用Purge命令,如:

SQL> select count(*) from goodsinfo2;

  COUNT(*)

----------

     38997

SQL> drop table goodsinfo2;

表已删除。

SQL> commit;

提交完成。

SQL> show recyclebin;

ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME

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

GOODSINFO2       BIN$BgSuEWMOSLOGZPcIc97O8w==$0 TABLE        2005-06-01:10:13:18

SQL> purge table goodsinfo2;

表已清除。

SQL> show recyclebin;

SQL>

使用 purge recyclebin可以清除回收站中的所有对象。

类似的我们可以通过purge user_recyclebin或者是purge dba_recyclebin来清除不同的回收站对象。

通过PURGE TABLESPACE TSNAME,PURGE TABLESPACE TSNAME USER USERNAME命令来选择清除回收站。

ps:用户drop后不进recycle bin,所以不用purge

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号