闪回(3)-flash drop
来源:互联网 发布:进口美工刀片批发 编辑:程序博客网 时间:2024/05/29 03:02
flash drop用来防止用户错误的删除表,索引等数据库对象,使用传统的数据恢复方式往往涉及到不需要恢复的对象,而闪回删除
逻辑区域。使用drop命令后,drop语句操作记录在一个系统表里,即将被删除的对象写到一个数据字典中。在回收站被清空或使用purge
命令之前,被删除的对象并没有真正从数据库中删除。被drop表对应的物理数据块空间成为备用的可用空间。只有当某个活动对象需要
恢复。drop命令在内部被映射为rename命令,并非真正的删除表。
SQL> alter system set recyclebin=on scope=spfile;
System altered.
SQL> drop table emp;
SQL> select object_name,original_name from user_recyclebin;
b.purge table recyclebin_object_name --回收站中的对象名称
c.purge tablespace tablespace_name --从指定的表空间中清除所有的drop对象
d.purge tablespace tablespace_name user user_name --从指定回收站中清除属于某个用户的所有drop对象
e.drop user user_name cascade --直接删除用户及用户所属的所有对象,会绕过回收站进行删除
f.purge recyclebin --清除用户自己的回收站
g.purge dba_recyclebin --从所有用户的回收站清除所有对象
a.当删除表emp,再新建emp后,再回复表emp时会报错,这时候需要在闪回时对表重命名。
SQL> flashback table emp to before drop rename to emp1;
b.当删除表emp,再新建emp,再删除表emp,这时候要恢复表需要制定object_name
b.对象的参考约束不会被恢复,指向该对象的外键约束需要重建
c.对象能否恢复成功,取决于对象空间是否被覆盖重用
d.删除表时,基于该表的物化视图也会被删除,但闪回时,视图并不会被闪回,因为不存在与
recyclebin中
e.对于recyclebin中的对象,只支持查询,如
SQL> select count(1) from "BIN$Nmg3ApabEGfgU4JQqMD6DA==$0";
可以直接恢复特定的对象。
在回收站中,回收站中记录有被drop表的新名字和原名字。
逻辑区域。使用drop命令后,drop语句操作记录在一个系统表里,即将被删除的对象写到一个数据字典中。在回收站被清空或使用purge
命令之前,被删除的对象并没有真正从数据库中删除。被drop表对应的物理数据块空间成为备用的可用空间。只有当某个活动对象需要
使用该表对应的空间时,该表才会被真正删除。只要空间未被复用,该表就可以被恢复。
恢复。drop命令在内部被映射为rename命令,并非真正的删除表。
SQL> alter system set recyclebin=on scope=spfile;
System altered.
SQL> drop table emp;
SQL> select object_name,original_name from user_recyclebin;
SQL> flashback table emp to before drop;
使用drop table emp purge则不会写入到回收站中
回收站清除
a.purge table original_table_name --被删除前的对象名称b.purge table recyclebin_object_name --回收站中的对象名称
c.purge tablespace tablespace_name --从指定的表空间中清除所有的drop对象
d.purge tablespace tablespace_name user user_name --从指定回收站中清除属于某个用户的所有drop对象
e.drop user user_name cascade --直接删除用户及用户所属的所有对象,会绕过回收站进行删除
f.purge recyclebin --清除用户自己的回收站
g.purge dba_recyclebin --从所有用户的回收站清除所有对象
可以使用show recyclebin查看回收站中的对象。
存储区域,或者说recycle bin要和普通对象争用存储空间。当空间不足时,oracle会按照先入先出的书序覆盖recycle bin的对象。
a.当删除表emp,再新建emp后,再回复表emp时会报错,这时候需要在闪回时对表重命名。
SQL> flashback table emp to before drop rename to emp1;
b.当删除表emp,再新建emp,再删除表emp,这时候要恢复表需要制定object_name
SQL> flashback table "BIN$Nk6pORquGyXgU4JQqMDqUA==$0" to before drop; --访问回收站中的对象需要加双引号
flash drop需要注意的地方
a.只能用于非系统表空间和本地管理的表空间b.对象的参考约束不会被恢复,指向该对象的外键约束需要重建
c.对象能否恢复成功,取决于对象空间是否被覆盖重用
d.删除表时,基于该表的物化视图也会被删除,但闪回时,视图并不会被闪回,因为不存在与
recyclebin中
e.对于recyclebin中的对象,只支持查询,如
SQL> select count(1) from "BIN$Nmg3ApabEGfgU4JQqMD6DA==$0";
0 0
- 闪回(3)-flash drop
- 闪回DROP表案例
- OLE Drap/Drop(3)
- OLE Drap/Drop(3)
- drop
- OLE拖放-drag-drop-3
- review the large issues (LCD, Flash, PSensor, call drop .....) solved during the project
- Drop unused columns--3--非官方方法--慎用!!
- 闪回drop的表(Flashback Table 回收站闪回)
- 闪回drop恢复表后sql执行计划异常
- [FLASH]Understanding ActionScript 3 debugging in Flash
- A drop of performance testing-SQL Optimization 3
- SQL Drop
- DROP PROCEDURE
- Egg Drop
- Drag &Drop
- Drop 简介
- Drag & Drop
- java调用系统默认浏览器打开链接
- jquery $.extend()【2】
- Ubuntu下HBase安装与使用(shell+Java API)
- 深度学习的多gpu并行尝试——qjzcy的博客
- JS中的对象联姻:call方法
- 闪回(3)-flash drop
- OnClick点击事件的用法(ListView)
- docker 学习笔记之增删改查
- 华为OJ 初级:等差数列
- 在屏幕上显示一个带标题的窗口,并添加一个按钮
- 背包问题
- Blob file download in Angular.js using $resource
- 郊寒岛瘦 —— 太平洋的小岛
- java面试题训练160712