阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Oracle回收站概述

435次阅读
没有评论

共计 2535 个字符,预计需要花费 7 分钟才能阅读完成。

在做展示 Oracle 表空间功能剩余空间的功能,发现查询表 dba_free_space 时特别慢,经网上搜索,说是由于表空间碎片和回收站(Oracle 10g 以后才有)引起的。

今天在 SOA 应用数据库上运用 DBMS_REDEFITION 包进行在线非分区表转换分区表操作时,本想 DROP 掉建的临时表 cube_scope_temp 不小心后面忘记加 ”temp” 直接执行了,我等意识到这个问题的时候已经晚了,因为项目建设等遗留问题,数据库是非归档模式,也没有做备份,因为怕影响业务,一时也没想到 oracle 回收站 recyclebin 这个方法,直接将备份的建表语句新建了表,保证了业务正常开展,正苦于怎么恢复数据时,突然想 oracle 10g 提供了回收站这个特性,成功实施数据恢复!

oracle 回收站 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 会自动删除的哦(切记)!

更多 Oracle 相关信息见 Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-11/137121.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计2535字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19350
评论数
4
阅读量
7960395
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
终于收到了以女儿为原型打印的3D玩偶了

终于收到了以女儿为原型打印的3D玩偶了

终于收到了以女儿为原型打印的 3D 玩偶了 前些日子参加某网站活动,获得一次实物 3D 打印的机会,于是从众多...
零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face 免费服务器 +Docker 快速部署 HertzBeat 监控平台 ...
星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛 NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手! 作为动漫爱好者,你是否还在为...
2025年11月28日-Cloudflare史诗级事故:一次配置失误,引爆全球宕机

2025年11月28日-Cloudflare史诗级事故:一次配置失误,引爆全球宕机

2025 年 11 月 28 日 -Cloudflare 史诗级事故: 一次配置失误,引爆全球宕机 前言 继今...
Prometheus:监控系统的部署与指标收集

Prometheus:监控系统的部署与指标收集

Prometheus:监控系统的部署与指标收集 在云原生体系中,Prometheus 已成为最主流的监控与报警...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

  星哥带你玩飞牛 NAS-16:不再错过公众号更新,飞牛 NAS 搭建 RSS 对于经常关注多个微...
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...
开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

  开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...
星哥带你玩飞牛NAS-16:飞牛云NAS换桌面,fndesk图标管理神器上线!

星哥带你玩飞牛NAS-16:飞牛云NAS换桌面,fndesk图标管理神器上线!

  星哥带你玩飞牛 NAS-16:飞牛云 NAS 换桌面,fndesk 图标管理神器上线! 引言 哈...