oracle 回收站recyclebin
发表于:2025-11-16 作者:千家信息网编辑
千家信息网最后更新 2025年11月16日,oracle 回收站recyclebin是10g才有的新特性,当我们drop table cube_scope 【purge】时,如果不指定purge时,系统只是将这个表重命名为BIN$开头的名称,并
千家信息网最后更新 2025年11月16日oracle 回收站recyclebinoracle 回收站recyclebin是10g才有的新特性,当我们drop table cube_scope 【purge】时,如果不指定purge时,系统只是将这个表重命名为BIN$开头的名称,并在数据字典中修改了相关数据,表所占用的物理空间并没有真正的回收,此时所占用的空间还是原来的表空间,当表空间不够用时,ORACLE会跟据DROPSCN#自动进行逐个清理回收站中对像所占用的空间,10g默认是打开回收站功能的。
一、如何查看是否开启回收站功能?
SQL> show parameter recyclebin
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
recyclebin string on
on:表示表空间启用的回收站功能,建议所有数据都开启这个功能,百利而无一害!
备注:该参数可以设置成session级别打开,也可以设置成system级别,不用重启就可以生效
二、如何不经过回收站直接删除并释放所占用空间?
SQL> drop table cube_scope purge
备注:此命令相当于truncate+drop操作,一般不建议这么操作!
三、如何将回收站recyclebin中的对像还原?
SQL> flashback table cube_scope to before drop
表名可以是回收站系统的dba_recyclebin.object_name也可以是dba_recyclebin.original_name
但是此时问题来了,我已经用备份的DDL语句重建了一个新的表,这个时候再用此命令还原显然会报错,这个时候怎么办呢,只能还原成一个别名,具体操作命令是
SQL> flashback table cube_scope to before drop rename to cube_scope_old
既然恢复了删除前的表中数据,现在只能从cube_scope_old中的数据插入cube_scope中
SQL> insert into cube_scope select * from cube_scope_old t
成功恢复了数据,是不是可以收工了?没有,还有什么忘记做了?想想?
注意:如果将表drop掉,那么索引也被drop掉了,用这种方法把表找回来了,但是你的索引呢?你的约束呢?表恢复后一定要将表上的索引重建建立起来(切记),索引丢了最多影响性能,约束没了可能会造成业务数据混乱(一定要注意)
四、如何手工清除回收站中的对像?
SQL> purge table orabpel.cube_scope_old --清除具体的对像
注意:如果此时是DBA用户操作其它用户数据,清除回收站中的表时要加上用户名,否则报表不在回收站中
SQL> purge tablespace ORAPEL --清除指定的表空间对像
SQL> purge tablespace ORAPEL user orabpel --删除表空间指定用户下的所有对像
SQL> purge recyclebin --清空整个回收站
五、show recyclebin为什么没有数据呢?
首先们需要明白一点,recyclebin是user_recyclebin的同义词,如此你当前的登陆用户是system此时运用
show recyclebin是没有数据据的
六、如果同一对像多次删除怎么在recyclebin中识别?
dba_recyclebin中对每删除一个对像都会以BIN$进行命名,同时会有相应的dropscn、createtime、droptime可以跟据这些对像进行定位,然后进行恢复
七、ORACLE空间利用原则
1. 使用现有的表空间的未使用空间
2. 如果没有了空闲空间,则检查回收站,对于回收站的对象按照先进先出的原则,对于最先删除的对象,
oracle在空间不足之时会最先从回收站删除以满足新分配空间的需求
3. 如果回收站也没有对象可以清理,则检查表空间是否自扩展,如果自扩展则扩展表空间,然后分配新空
间
4.如果表空间非自扩展,或者已经不能自扩展(到达最大限制),则直接报表空间不足错误,程序终止
八、DROP掉的对像是不是都会经过回收站?
以下几种drop不会将相关对像放进回收站recyclebin中
* drop tablespace :会将recyclebin中所有属于该tablespace的对像清除
* drop user :会将recyclebin中所有属于该用户的对像清除
* drop cluster : 会将recyclebin中所有属于该cluster的成员对像清除
* drop type : 会将recyclebin中所有依赖该type对像清除
另外还需要注意一种情况,对像所在的表空间要有足够的空间,不然就算drop掉经过recyclebin由于空间不足oracle会自动删除的哦(切记)!
一、如何查看是否开启回收站功能?
SQL> show parameter recyclebin
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
recyclebin string on
on:表示表空间启用的回收站功能,建议所有数据都开启这个功能,百利而无一害!
备注:该参数可以设置成session级别打开,也可以设置成system级别,不用重启就可以生效
二、如何不经过回收站直接删除并释放所占用空间?
SQL> drop table cube_scope purge
备注:此命令相当于truncate+drop操作,一般不建议这么操作!
三、如何将回收站recyclebin中的对像还原?
SQL> flashback table cube_scope to before drop
表名可以是回收站系统的dba_recyclebin.object_name也可以是dba_recyclebin.original_name
但是此时问题来了,我已经用备份的DDL语句重建了一个新的表,这个时候再用此命令还原显然会报错,这个时候怎么办呢,只能还原成一个别名,具体操作命令是
SQL> flashback table cube_scope to before drop rename to cube_scope_old
既然恢复了删除前的表中数据,现在只能从cube_scope_old中的数据插入cube_scope中
SQL> insert into cube_scope select * from cube_scope_old t
成功恢复了数据,是不是可以收工了?没有,还有什么忘记做了?想想?
注意:如果将表drop掉,那么索引也被drop掉了,用这种方法把表找回来了,但是你的索引呢?你的约束呢?表恢复后一定要将表上的索引重建建立起来(切记),索引丢了最多影响性能,约束没了可能会造成业务数据混乱(一定要注意)
四、如何手工清除回收站中的对像?
SQL> purge table orabpel.cube_scope_old --清除具体的对像
注意:如果此时是DBA用户操作其它用户数据,清除回收站中的表时要加上用户名,否则报表不在回收站中
SQL> purge tablespace ORAPEL --清除指定的表空间对像
SQL> purge tablespace ORAPEL user orabpel --删除表空间指定用户下的所有对像
SQL> purge recyclebin --清空整个回收站
五、show recyclebin为什么没有数据呢?
首先们需要明白一点,recyclebin是user_recyclebin的同义词,如此你当前的登陆用户是system此时运用
show recyclebin是没有数据据的
六、如果同一对像多次删除怎么在recyclebin中识别?
dba_recyclebin中对每删除一个对像都会以BIN$进行命名,同时会有相应的dropscn、createtime、droptime可以跟据这些对像进行定位,然后进行恢复
七、ORACLE空间利用原则
1. 使用现有的表空间的未使用空间
2. 如果没有了空闲空间,则检查回收站,对于回收站的对象按照先进先出的原则,对于最先删除的对象,
oracle在空间不足之时会最先从回收站删除以满足新分配空间的需求
3. 如果回收站也没有对象可以清理,则检查表空间是否自扩展,如果自扩展则扩展表空间,然后分配新空
间
4.如果表空间非自扩展,或者已经不能自扩展(到达最大限制),则直接报表空间不足错误,程序终止
八、DROP掉的对像是不是都会经过回收站?
以下几种drop不会将相关对像放进回收站recyclebin中
* drop tablespace :会将recyclebin中所有属于该tablespace的对像清除
* drop user :会将recyclebin中所有属于该用户的对像清除
* drop cluster : 会将recyclebin中所有属于该cluster的成员对像清除
* drop type : 会将recyclebin中所有依赖该type对像清除
另外还需要注意一种情况,对像所在的表空间要有足够的空间,不然就算drop掉经过recyclebin由于空间不足oracle会自动删除的哦(切记)!
空间
回收站
数据
用户
功能
索引
命令
对象
原则
备注
建议
报表
时候
最先
系统
级别
分配
检查
混乱
不够
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
银河证券总部数据库部门好吗
北京怀柔软件开发公司电话
和利时怎么导入数据库
网络安全或者数据安全
安装数据库时闪退
计算机网络技术刘四清
湖北通讯软件开发设施价钱
路由器服务器拒绝连接ipv6
高一英语单词软件开发
大富豪授权数据库脚本下载
武汉软件开发培训费用
项目申报书范例网络安全
办公小软件开发
智还软件开发教程
微信营销软件开发原理
温哥华天气预报软件开发
收缩数据库后需要重建索引
如何获取任意长度数据库
如何连接我的世界快照版服务器
数据库原理 课程设计
工控街网络技术
mysql数据库拷贝
php7 数据库连接
棒的网络安全零信任
高一英语单词软件开发
常州通信网络技术
北京大型软件开发单价
计算机网络技术项目化教程考题
手机软件开发工程师薪资
网络安全与隐私探讨论文