最近发现oracle中出现了这些奇怪的表名,上网查找后发现是oracle10g的回收站功能,并没有彻底的删除表,而是把表放入回收站,最后就出现了这样一堆奇怪的表名......

清除的方法如下:

purge table origenal_tableName;

purge index origenal_indexName;

查询垃圾信息,可以用如下SQL语句:

SELECT t.object_name,t.type ,t.original_name FROM user_recyclebin t;

现在发现,原来还有这个命令:

PURGE recyclebin;

根本用不了上面那么复杂。呵呵。。。

另,删除Table不进入Recycle的方法:

drop table tableName purge;

不过,我想一般的人都不愿意用这个。

最近发现oracle中出现了这些奇怪的表名,上网查找后发现是oracle10g的回收站功能,并没有彻底的删除表,而是把表放入回收站,最后就出现了这样一堆奇怪的表名。。。。

清除的方法如下:

purge table origenal_tableName;

purge index origenal_indexName;

查询垃圾信息,可以用如下SQL语句:

SELECT t.object_name,t.type ,t.original_name FROM user_recyclebin t;

现在发现,原来还有这个命令:

PURGE recyclebin;

根本用不了上面那么复杂。呵呵。。。

另,删除Table不进入Recycle的方法:

drop table tableName purge

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

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

所谓的回收站,是一个虚拟的容器,用于存放所有被删除的对象。在回收站中,被删除的对象将占用创建时的同样的空间,你甚至还可以对已经删除的表查询,也可以利用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

oracle purge作业,Oracle Purge和drop的区别相关推荐

  1. Oracle中TRUNCATE、DELETE和DROP的区别?

    Oracle中TRUNCATE.DELETE和DROP的区别? 区别: 1.删除表时表数据方面 delete是每次从表中删除一行,同时将删除操作作为事务写进日志以便回滚操作,在有该操作的触发器时,执行 ...

  2. 怎么看oracle定时作业,Oracle 定时作业Job详解

    Oracle 定时作业Job :用于安排和管理作业队列,通过使用作业,可以使Oracle数据库定期执行特定的任务.而且Oracle重新启动后,Job会继续运行,不用重新启动. 场景: (1)后台业务统 ...

  3. oracle purge作业,Oracle purge用法介绍

    1.用途: 清除oracle 回收站(recyclebin)中的表和索引并释放与其相关的空间,还可清空回收站,或者清除表空间中记录的已删除的部分表空间. 注意:purge后不能回滚和恢复. 2.语法: ...

  4. oracle中delete、truncate、drop的区别 (转载)

    一.delete 1.delete是DML,执行delete操作时,每次从表中删除一行,并且同时将该行的的删除操作记录在redo和undo表空间中以便进行回滚(rollback)和重做操作,但要注意表 ...

  5. [ORACLE]删除表的purge用法

    [ORACLE]删除表的purge用法 请支持原创,认准DannisTang(tangweixuan1995@foxmail.com) 使用oracle开发的时候,如果在存储过程中,或者是其他代码中使 ...

  6. oracle flashback清理,Oracle的Flashback Drop闪回删除功能实践

    Oracle的Flashback Drop闪回删除功能给出我们一种误DROP删除表的便捷恢复方式,实现这种功能的原理是Oracle的"回收站"(RecycleBin)功能.注意,如 ...

  7. Oracle学习笔记 --- Oracle ORA错误解决方案

    今天在Debug的时候报错了如下信息: 后来综合了网上的东西,总结如下: ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常. ORA-000 ...

  8. oracle 扩展分区,Oracle 在线扩展分区

    在对Oracle分区表操作是,当一个分区已经有了最大的分区,如何再次扩展分区呢?简单的方式是先删除最大分区,然后添加需要的分区 在对Oracle分区表操作是,当一个分区已经有了最大的分区,如何再次扩展 ...

  9. oracle的partition,ORACLE PARTITION简介

    一.Oracle分区简介 ORACLE的分区是一种处理超大型表.索引等的技术.分区是一种"分而治之"的技术,通过将大表和索引分成可以管理的小块,从而避免了对每个表作为一个大的.单独 ...

最新文章

  1. 搞懂OpenLDAP
  2. 干货整理 Unity3D资源汇总
  3. springboot activiti工作流简单示例
  4. GARFIELD@02-19-2005
  5. Karrigell 入门教程
  6. ISE应用入门的一些问题
  7. 财务自由,一年赚500万,依然做社畜是什么感觉?
  8. AI 用神经网络实现序列到序列的学习
  9. 如何设置视频的帧率、分辨率、码率来调节音视频即时通讯的质量
  10. 可见光通信原理及硬件方案
  11. 网易我的世界qq版服务器维护中,网易《我的世界》官方发布Hypixel中国版服务器停止运营公告...
  12. 怎么用计算机向手机上传照片,华为手机怎么传照片到电脑上去?华为手机往电脑传照片方法...
  13. 睁开双眼玩立体游戏!3D显示技术解析
  14. BZOJ 2429: [HAOI2006]聪明的猴子
  15. 踩在云端的温柔!这是我最近穿上就不想脱下来的鞋 | 钛空实测
  16. 【面经】阿里数据研发多面面经
  17. Linux网络设置(linux相关网络命令大全)
  18. 机器学习20:基于ResNet50和FaceNet实现人脸识别
  19. java72-GUL流式布局管理器
  20. 利用Serv-u提权的简单思路

热门文章

  1. POJ 1966 求无向图点连通度
  2. iOS 关于APP注册总结
  3. 【总结】——工作之前,给自己
  4. .jpg图片转化流程详解
  5. 怎么解压linux ext4文件,ext4解包和重新打包
  6. window下安装MXNet
  7. 使用ScrollMagic 简单模仿苹果官网首页滑动视觉效果
  8. 辰宿:VPC网络中省钱的秘密
  9. android 橡皮擦功能吗,android,安卓开发_Android 图片涂鸦橡皮擦功能,android,安卓开发 - phpStudy...
  10. splash官方文档解读(翻译)