oracle flashback清理,Oracle的Flashback Drop闪回删除功能实践
Oracle的Flashback Drop闪回删除功能给出我们一种误DROP删除表的便捷恢复方式,实现这种功能的原理是Oracle的“回收站”(RecycleBin)功能。注意,如果被删除的表原先是存放在SYSTEM系统表空间上,则不支持此功能。
1.Flashback Drop功能
恢复被错误drop掉的表。当一张表被删除后,依然可以查看被drop表的内容,是通过查看回收站中的内容实现的。
2.实现原理
被删除的表将被存在一个叫recyclebin回收站的地方,当drop掉表后,实际上就是将改表改了个名字。
3.与回收站有关的视图
DBA_RECYCLEBIN
USER_RECYCLEBIN
RECYCLEBIN
4.显示当前用户曾经被drop掉的表简短信息
SQL> show recyclebin
5.清除回收站内容的条件
1)表空间不足
2)用户的空间配额不足
3)purge命令
4)使用flashback命令恢复表后,与之对应的回收站中的那条记录内容被清除。
6.Flashback Drop语法
SQL> FLASHBACK TABLE ft_1 TO BEFORE DROP;
SQL> FLASHBACK TABLE "BIN$Z6gzDCWg7hfgQAB/AQAROQ==$0" TO BEFORE DROP;
上面两种方法都可以实现找回被删除表的功能。第一种方法是恢复到最后一次被删除的状态;第二种方法则可以对回收站中具体的一个对象进行闪回,用于一张表被多次删除后的恢复场景。
7.Flashback Drop闪回删除功能实践
(1).创建测试表ft_1
sys@ora11g> conn secooler/secooler
Connected.
secooler@ora11g> create table ft_1 as select * from all_objects;
Table created.
secooler@ora11g> select table_name from user_tables where table_name = 'FT_1';
TABLE_NAME
------------------------------
FT_1
(2).模拟drop掉ft_1表
secooler@ora11g> drop table ft_1;
Table dropped.
(3).查看回收站,这里看到ft_1表已经在回收站中了
secooler@ora11g> show recyclebin;
ORIGINAL NAME RECYCLEBIN NAME OBJECT TYPE DROP TIME
---------------- ------------------------------ ------------ -------------------
FT_1 BIN$vXtL504BE5vgQMKQt8Bnug==$0 TABLE 2012-04-12:20:14:24
(4).演示一下查询功能
secooler@ora11g> select count(*) from "BIN$vXtL504BE5vgQMKQt8Bnug==$0";
COUNT(*)
----------
71256
(5).闪回被drop掉的表
secooler@ora11g> flashback table ft_1 to before drop;
Flashback complete.
secooler@ora11g> select table_name from user_tables where table_name = 'FT_1';
TABLE_NAME
------------------------------
FT_1
这里在能确认回收站中哪个是要恢复的表时,也可以使用下面的命令进行恢复。
secooler@ora11g> drop table ft_1;
Table dropped.
secooler@ora11g> show recyclebin;
ORIGINAL NAME RECYCLEBIN NAME OBJECT TYPE DROP TIME
---------------- ------------------------------ ------------ -------------------
FT_1 BIN$vXtL504IE5vgQMKQt8Bnug==$0 TABLE 2012-04-12:20:18:35
secooler@ora11g> flashback table "BIN$vXtL504IE5vgQMKQt8Bnug==$0" to before drop;
Flashback complete.
secooler@ora11g> select table_name from user_tables where table_name = 'FT_1';
TABLE_NAME
------------------------------
FT_1
OK,到这里,被删除的表便被顺利的恢复回来。
8.清除回收站内容的方法
如果您确定、一定以及肯定不想恢复这些表的时候,可以使用以下方法对回收站进行清理。
1)清除当前用户的回收站
SQL> purge recyclebin;
SQL> purge user_recyclebin;
2)清除指定表空间tbs_sec_d的回收站
SQL> purge tablespace tbs_secooler_d;
3)清除指定表空间tbs_sec_d,同时指定用户sec的回收站
SQL> purge tablespace tbs_sec_d user sec;
4)清除回收站中所有的内容(sys用户)
SQL> purge dba_recyclebin
9.不产生回收站数据的同时drop表方法
这种方法是彻底删除表的方法,使用前要考虑清楚。
SQL> drop table ft_1 purge;
10.小结
在使用Flashback Drop闪回删除功能之前要充分了解此项功能的实现原理,以及使用此项功能的条件和它的限制条件。闪回删除功能为我们提供了表被误DROP后的便捷恢复手段。
oracle flashback清理,Oracle的Flashback Drop闪回删除功能实践相关推荐
- 【Flashback】Flashback Database闪回数据库功能实践
[Flashback]Flashback Database闪回数据库功能实践 上一篇 / 下一篇 2012-04-07 21:16:40 / 个人分类:备份与恢复 查看( 278 ) / 评论( 2 ...
- Oracle:闪回,闪回表,闪回删除,闪回版本查询,闪回事务查询
SQL> --SCN(系统改变号) sysdate的对应关系 SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),timestamp_ ...
- oracle中闪回和回滚,Oracle Flashback 闪回查询功能9i和10g的区别
Oracle从9i开始提供了基于回滚段的闪回查询(Flashback Query)功能,可用于恢复错误的DML操作.在Oracle 10g中对闪回查询做了较大改进,不再局限于闪回查询,还可用于恢复错误 ...
- oracle清除bin,Oracle recyclebin详解(闪回删除的表)
在SOA应用数据库上运用DBMS_REDEFITION包进行在线非分区表转换分区表操作时,本想DROP掉建的临时表cube_scope_temp不小心后面忘记加"temp"直接执行 ...
- oracle导出自增设置,oracle008:oracle自增,自适应,数据闪回,导入导出
oracle008:oracle自增,自适应,数据闪回,导入导出 oracle008:oracle自增,自适应,数据闪回,导入导出 一,oracle数据自增 在MySQL中自增使用主键和自增来实现,但 ...
- oracle 闪回查询,闪回版本查询,闪回事务查询,闪回表,闪回删除,闪回数据库
文章目录 1. 闪回查询 1.1. 闪回时间查询 1.2. 闪回scn查询 (1) 获取scn号的方法 (2) 闪回scn查询命令 2. 闪回版本查询 3. 闪回事务查询 4. 闪回表 5. 闪回删除 ...
- [Flashback]开启数据库闪回数据库功能
Flashback是Oracle中一个重要的功能,想要使用闪回数据库功能,需要将数据库置于闪回数据库的状态. 1.检查数据库是否开启归档状态 SQL> archive log list; Dat ...
- oracle 10g的闪回删除与回收站
闪回删除与回收站的简介 1.正常情况下删除一个表 drop table test1 这是表会被放置在recyclebin(回收站) 注意:这里如果执行了"commit"提交操作.下 ...
- 闪回的用途与实战(闪回表,闪回删除,闪回重名删除,闪回版本查询)
闪回可以做的操作有如下几种类型: 1.当数据错误删除,并且提交时(flashback table) 2.当错误删除了一张表drop table(flashback drop) 3.通过闪回获取表的历史 ...
最新文章
- DropDownList联动
- 笔记整理之 SHELL 变量
- azkaban mysql参数_azkaban参数详解
- Chromium 内核新款 Edge 浏览器对比评测,微软找回面子全靠它了
- 数学建模相关知识梳理
- 服务器上需要高性能显卡吗,英特尔要做独立显卡 只因服务器市场太重要
- dpdk 驱动移植叩开 kni 模块那些黑暗的角落
- Perl 常用正则匹配
- 分享Silverlight/WPF/Windows Phone一周学习导读(06月06日-06月11日)
- 光学定位与追踪技术_光学跟踪技术定位精准罗技M90鼠标仅32
- 猴子吃桃问题:一只小猴子摘了若干桃子,每天吃现有桃的一半多一个,到第10天时就只有一个桃子了,求原有多少个桃?请编程实现。(C++)(迭代法)
- 基于Python的招聘推荐与薪资预测系统的设计与实现
- PLSQL Developer几个可能的隐患
- 层次分析法(AHP)基础概念整理+步骤总结
- 基于树莓派(ARM)的人脸识别摄像头(QT5.8+OPENCV3.4.5)开发总结
- Parity Game(并查集)
- android的发音功能实现,Android开发之文本内容自动朗读功能实现方法
- macOS系统更新下载太慢?官方原版系统高速下载教程
- html给复制的英文文献换空格符
- 复化梯形公式求椭圆周长C语言,C语言编程解线性,非线性方程,龙贝格算法.docx