Oracle数据库10g垃圾表清除最新方法

网络整理 - 07-27

  经常使用oracle10g,我们可以发现以前删除的表在数据库中出现了特别多的垃圾表,如下例:

  BINjR8PK5HhrrgMK8KmgQ9nw==

  这一类的表通常无法删除,并且无法用"delete"删除,这种情况的出现,

  一般不会影响正常的使用,但是有遇到以下几种情况时则必须删掉它。

  ◆1.这些表占用空间

  ◆2.如果使用Middlegen-Hibernate-r5的朋友会发现一些问题[问题描述:在运行ant build.xml会出现ORA-01424: 转义符之后字符缺失或非法],不你象以前用oracle9时那么顺的生成hibernate配置文件,原因就在这里将它删除就没有问题了.

  ◆3.其它情况

  BINjR8PK5HhrrgMK8KmgQ9nw==

  这一类的表是是10g 的新特性。

  Drop Table 后,没有真正的删除表,而是在“垃圾站”中了。可以通过下面看到。

  SQL> SHOW RECYCLEBIN

  如果要彻底删除,可以使用:

  SQL> PURGE TABLE "BINjR8PK5HhrrgMK8KmgQ9nw==";

  删除这一个或删除全部。

  SQL> PURGE RECYCLEBIN;