Flashback删除(闪回删除)】的更多相关文章

oracle 9i以前,当drop一个表时,到该表的所有引用都会从数据字典中删除. oracle 10g及以后,当drop一个表时,数据库根本没有删除表,而只是重命名了并放入了回收站.即当发出drop命令时,其实数据库内部执行的是rename操作,此操作应用于index, trigger, constraint,forgein key除外. 既然是rename,就可以撤消删除——通过将表重命名为它原先的名称.但并不能保证总是成功的.因为表占用的空间可能被重用,或在此期间创建了另一个表,表名与被删…
今天在SOA应用数据库上运用DBMS_REDEFITION包进行在线非分区表转换分区表操作时,本想DROP掉建的临时表cube_scope_temp不小心后面忘记加"temp"直接执行了,我等意识到这个问题的时候已经晚了,因为项目建设等遗留问题,数据库是非归档模式,也没有做备份,因为怕影响业务,一时也没想到oracle回收站recyclebin这个方法,直接将备份的建表语句新建了表,保证了业务正常开展,正苦于怎么恢复数据时,突然想oracle 10g提供了回收站这个特性,成功实施数据恢…
Oracle Flashback Technologies - 闪回被drop的表 在oracle10g中,drop一个表后,表没有真正被删除,支持被rename后放在recyclebin中. #新建一个表y2,用来测试 SQL> create table y2 as select * from all_tables; Table created. SQL> select count(*) from y2; COUNT(*) ---------- #删除表 SQL> show recyc…
Oracle Flashback Technologies - 闪回查询 查看表中,某行数据的修改记录 #创建一个表,并插入和修改数据 SQL> create table y3(id )); Table created. SQL> insert into y3 values(,'wahaha'); row created. SQL> commit; Commit complete. SQL> update y3 ; row updated. SQL> commit; Comm…
Oracle Flashback Technologies - 闪回数据库 根据指定的SCN,使用rman闪回数据库 #查看可以闪回到多久前 SQL> select * from v$flashback_database_log; #查看当前的SCN SQL> select current_scn from v$database; CURRENT_SCN ----------- SQL> #关闭数据库 $ rman target / Recovery Manager: Release -…
误删除了部分重要数据,已提交,需要恢复.首先尝试flashback query闪回数据. 数据库运行在归档模式,首先确认数据库的SCN的变化: SQL> col fscn for 999999999999999999999SQL> col nscn for 999999999999999999999SQL> select name,first_change# fscn,next_change# nscn, first_time from v$archived_log; NAME     …
很多人在学习flashback database这个oracle技术的时候,都会有一个疑问,就是如果我只有一个数据库作为生产库的话,是否有这样的业务需求导致我们要把数据库闪回到以前的时间点?以及这样做是否值得(当前时间点和闪回目的时间点中间的所有操作将丢失)? 其实抛开这个问题的讨论,在oracle的dataguard环境配置中,对于故障切换后产生故障的主机从新回到dataguard环境,以及处于测试的目的我们人为的激活了备库,flashback database都可以提供非常好的选择. 下面的…
一.  Flashback Database 说明 Flashback Database 功能非常类似与 RMAN 的不完全恢复, 它可以把整个数据库回退到过去的某个时点的状态, 这个功能依赖于 Flashback log 日志. 比RMAN 更快速和高效. 因此 Flashback Database 可以看作是不完全恢复的替代技术. 但它也有某些限制:(1)Flashback Database 不能解决 Media Failure, 这种错误 RMAN 恢复仍是唯一选择.(2)如果删除了数据文…