Oracle9i使用闪回查询数据库的恢复被删除的问题

如果用户不小心删除或更新的数据,如用户没有什么恢复的直接方法,他们必须帮助DBA数据库还原到Oracle9i,这种尴尬的局面有所改善。Oracle 9i数据库提供了一种新的技术——使用闪回查询闪回查询,用户可以及时的误操作之前的数据,并可以根据相应的纠错措施,而这一切没有DBA的干预。



由于低手,我删除了生产数据。

删除语句被使用,然后很快返回到提交。

以下两个陈述:


tablename表使行运动;
闪回表的时间戳to_timestamp('2012-09-13 13:00:00 ','yyyy-mm-dd hh24:MI:SS);


------------------------------------------------------

我记得两点半左右,大约两点半。

具体的实现过程可以从下面的示例中学习。

1。原始表记录


目前美元eygle / eygle
SQL * Plus:释放10.1.0.2.0 -在3月30日结婚08:52:04 2005生产
版权(c)1982, 2004,甲骨文。版权所有。
连接:
Oracle数据库10g企业版发布10.1.0.2.0 - 64bit生产
使用分区、OLAP和数据挖掘选项
从T1中选择计数(*);
计数(*)
----------
九千三百一十八


2。错误删除所有记录

并提交更改。


从t1删除;
删除9318行。
提交;
提交完整的。
从T1中选择计数(*);
计数(*)
----------



三.获取当前SCN

如果我们可以在删除SCN之前准确地知道,如果您不知道,可以是闪回查询尝试。


SQL >选择dbms_flashback.get_system_change_number双;
get_system_change_number
------------------------
一千零六十七万一千零六
从SCN 10671000中从t1选择计数(*);
计数(*)
----------

从SCN 10670000中从t1选择计数(*);
计数(*)
----------
九千三百一十八


我们看到,在SCN = 10670000,数据在。

4。restore the data.


从t1中插入到T1选择*,如SCN 10670000;
创建9318行。
提交;
提交完整的。
从T1中选择计数(*);
计数(*)
----------
九千三百一十八




其他因特网用户使用的教程

对于数据库操作,我们必须在删除后添加。今天,我意外地看到了一段关于Oracle在互联网上删除数据恢复的信息,结果发现它确实很好。让我报告下一次考试。




选择t_viradsl T * / /查询t_viradsl所有数据,你可以看到三个数据
删除。t_viradsl / /删除所有数据在t_viradsl数据消失,三
从t_viradsl T * / /无数据选择。
插入。为t_viradsl选择t_viradsl作为时间戳从to_date('','yyyy-mm-dd::HH:MI:SS) / /删除数据表
从t_viradsl T * / /选择将看到三个数据。



让我们分析四步,注意这句话:


SELECT * FROM t_viradsl2作为时间戳to_date('2011-01-19 15:28:00 ','yyyy-mm-dd hh24:MI:SS)


你什么意思,找到t_viradsl2

所有的数据在这个时间点在2011-01-19 15:28:00,自

找出你想做什么。