以前没细研究,今天发现Oracle被删除的表进了回收站,而且可以再回来,呵呵,需要学习的东西还很多!
首先我创建了个表
create table test001(username char(30),passw char(30));
insert into test001('李云鹏','admin');
然后删除掉
drop table test001;
然后查看我的表
select table_name from cat;
发现多出来这样一张表
TABLE_NAME TABLE_TYPE
------------------------------ -----------
BIN$c2gGrYO1Sceh5re9OLksWg==$0 TABLE
之前问了下别人,说这是加密表,但是我知道这个是因为我创建了一张表形成的,而我又没创建什么加密表,那我就好奇了,是啥东西呢,然后我查了一下资料,原来这个事被回收站的表~!
也就是Oracle删除了的表被放进了回收站,相当于Windows系统下的回收站,虽然删除了,但是它还存在在回收站里头
我们可以通过
select * from recyclebin;
来查看被删除掉放进回收站的表
我们可以通过
flashback table 原表名 to before drop;
来把删除掉的表找回来
还可以通过
purge recyclebin;
清空回收站
还可以通过
drop table 表名 purge;
不经过回收站来删除表
当然还可以在系统里面设置是否通过回收站来删除表
alter system set recyclebin = off/on DEFERRED;
分享到:
相关推荐
### Oracle从回收站恢复删除的表 #### 一、引言 在Oracle 10g及后续版本中,为了提供更高效的数据管理能力,引入了一个非常实用的功能——**回收站**(Recycle Bin)。这一特性使得数据库管理员能够在不慎删除表等...
如果表中有数据,必须先删除表格并清空回收站,才能继续删除数据文件。 4. 不能删除SYSTEM表空间的数据文件,除非数据库处于关闭状态。尽管文档指出,READ ONLY表空间的数据文件不可删除,但实际测试表明这是可行的...
例如,在尝试删除回收站中的对象时出现错误: ```sql DROP TABLE "BIN$Qo99szdrw8bgQAB/AQAX/Q==$0"; ``` 错误提示: ``` ERROR dropping "BIN$Qo99szdrw8bgQAB/AQAX/Q==$0" ORA-00933: SQL command not properly ...
9. **回收站管理**:Oracle的回收站功能可以防止意外删除的数据丢失,但也会占用表空间。适时清空回收站可以释放被删除对象占用的空间。 10. **数据归档和卸载**:对于不再频繁访问的历史数据,可以考虑归档或卸载...
8. 回收站的优点:Oracle 回收站可以帮助用户快速恢复误删除的表和对象,避免数据丢失,提高了数据库的安全性和可靠性。 9. 回收站的配置:Oracle 回收站的配置可以根据需要进行设置,例如可以设置回收站的大小和...
- **原理**:当使用`DROP`命令删除表后,Oracle并没有立即清除表占用的空间,而是将其放入了一个特殊的区域——回收站中,直到这些空间被新的数据覆盖。 - **查询回收站**:可以通过查询`USER_TABLES`视图或`USER_...
本文将深入探讨Oracle表空间的回收过程,并提供一个可能的回收脚本示例。 1. **表空间的基本概念** - 表空间是由一个或多个数据文件组成的逻辑存储区域。每个Oracle数据库至少包含一个系统表空间(SYSTEM),用于...
由于Oracle默认的行为是在删除表时将其放入回收站而非立即彻底删除,因此若想实现真正的删除,则需要采取额外的步骤来确保数据表被永久移除。下面将详细介绍几种实现彻底删除Oracle数据表的方法: 1. **使用PURGE...
Oracle自10g版本起引入了回收站(Recycle Bin)的概念,这一特性允许用户恢复已删除的对象,包括表、索引等。通过回收站机制,即使一个表被意外删除,也可以轻松将其恢复到删除前的状态。 #### 回收站的工作原理 当...
Oracle 10g 的 Recycle Bin 回收站 Oracle 10g 引入了 Recycle Bin 回收站功能,类似于操作...Oracle 10g 的 Recycle Bin 回收站功能为用户提供了一个安全的方式来删除和还原对象,从而提高了数据库的可靠性和安全性。
在Oracle数据库中,**回收站(Recycle Bin)**是一项非常实用的功能,它为用户提供了一种安全删除对象的方式。当用户删除一个表、视图、索引等数据库对象时,这些对象并不会被立即从数据库中彻底清除,而是会被移动到...
然而,在解决了`argument$`表的问题后,当再次尝试删除操作时,可能会遇到另一个错误:ORA-00604和ORA-38301,这表明对象存在于回收站中,不允许执行DDL/DML操作。 #### 解决回收站中的对象问题 1. **清除回收站**...
在了解如何彻底删除Oracle表和如何使用闪回恢复回收站中的数据之前,我们需要先明白回收站的工作原理。 回收站的工作原理在于,当执行`DROP TABLE`等删除命令时,Oracle并不立即释放相关的磁盘空间,而是将被删除的...
回收站的工作原理是,当执行删除操作时,如DROP TABLE,Oracle不会立即释放相关空间,而是将原来的表重命名并移入回收站。表名会变成系统生成的唯一新名,保留原有的存储空间。如果需要,用户可以通过执行特定的SQL...
Oracle 10g 的回收站功能是一个内置的数据保护机制,允许数据库管理员恢复意外删除的表、索引和其他数据库对象。回收站本质上是一个特殊区域,它保存了被删除对象的元数据,直到它们被显式地从回收站中清除或者达到...
因此,如果你确实希望彻底删除回收站中的对象,应该使用 `PURGE RECYCLEBIN` 命令。 启用或禁用回收站功能可通过修改初始化参数 `recyclebin` 完成。默认情况下,回收站是开启的。你可以使用以下语句来切换其状态:...
`命令彻底删除回收站中的所有对象。 - 若要只清除特定的表,可以使用`PURGE TABLE [RECYCLE BIN NAME];`。 - 示例:`SQL> PURGE TABLE "BIN$04LhcpndanfgMAAAAAANPw==$0";` ### 闪回表的高级应用 除了基本的恢复...
此外,还可以通过以下命令删除回收站中的所有内容,实现空间回收: ```sql PURGE RECYCLEBIN; ``` #### 五、总结 Oracle数据库提供了多种误删除数据的恢复方法,包括闪回恢复和回收站恢复。通过对这些方法的理解和...
Oracle 在删除表时,没有直接清空表所占的块,而是把这些已删除的表的信息放到了一个虚拟容器“回收站”中,而只是对该表的数据块做了可以被覆写的标志。 可以直接查询这个“回收站”或者查询 user_table 视图来...
Oracle 10G的回收站是数据库管理系统中一个重要的特性,它允许用户在不小心删除数据库对象后能够方便地恢复这些对象,从而极大地减少了因误操作导致的数据丢失问题。回收站本质上是一个数据字典表,存储了被Drop操作...