oracle恢复误删数据
2013-03-23 11:32
537 查看
1.应用Flashback Query查询过去的数据
自9i之后,使用Flashback Query的特性,我们可以很轻松地恢复记录。 Flashback Query这一特性,最常被应用的就是修复误操作的数据了。注意,这并不是说Flashback Query能够恢复数据。Flashback Query本身不会恢复任何操作或修改,也不能告诉你做过什么操作或修改,实际上Flashback Query特性实际应用时,是基于标准SELECT的扩展,借助该特性能够让用户查询到指定时间点的表中的记录。
操作示例:
1. select * from test_table t //查询test_table 中所有的数据
2. delete test_table //删除test_table 中所有的数据
3. select * from test_table t //无数据。
4. insert into test_table select * from test_table as of timestamp to_Date('2011-01-19 15:28:00', 'yyyy-mm-dd hh24:mi:ss') //已将误删除数据插入表中
5. select * from test_table t //又会看到数据。
我们来分析下第四步,注意这句:
select * from test_table as of timestamp to_Date('2013-03-23 11:28:00', 'yyyy-mm-dd hh24:mi:ss'),什么意思呢, 找到test_table在2013-03-23 11:28:00这个时间点的所有数据(数据快照)。
INSERT INTO test_table SELECT * FROM test_table AS OF TIMESTAMP SYSDATE-5/1440
AS OF TIMESTAMP方式的使用非常方便,但是在某些情况下,我们建议使用AS OF SCN的方式执行Flashback Query。如需要对多个相互有主外键约束的表进行恢复时,如果使用AS OF TIMESTAMP的方式,可能会由于时间点不统一的缘故造成数据选择或插入失败,通过AS OF SCN方式则能够确保记录处理的时间点一致。
自9i之后,使用Flashback Query的特性,我们可以很轻松地恢复记录。 Flashback Query这一特性,最常被应用的就是修复误操作的数据了。注意,这并不是说Flashback Query能够恢复数据。Flashback Query本身不会恢复任何操作或修改,也不能告诉你做过什么操作或修改,实际上Flashback Query特性实际应用时,是基于标准SELECT的扩展,借助该特性能够让用户查询到指定时间点的表中的记录。
操作示例:
1. select * from test_table t //查询test_table 中所有的数据
2. delete test_table //删除test_table 中所有的数据
3. select * from test_table t //无数据。
4. insert into test_table select * from test_table as of timestamp to_Date('2011-01-19 15:28:00', 'yyyy-mm-dd hh24:mi:ss') //已将误删除数据插入表中
5. select * from test_table t //又会看到数据。
我们来分析下第四步,注意这句:
select * from test_table as of timestamp to_Date('2013-03-23 11:28:00', 'yyyy-mm-dd hh24:mi:ss'),什么意思呢, 找到test_table在2013-03-23 11:28:00这个时间点的所有数据(数据快照)。
INSERT INTO test_table SELECT * FROM test_table AS OF TIMESTAMP SYSDATE-5/1440
AS OF TIMESTAMP方式的使用非常方便,但是在某些情况下,我们建议使用AS OF SCN的方式执行Flashback Query。如需要对多个相互有主外键约束的表进行恢复时,如果使用AS OF TIMESTAMP的方式,可能会由于时间点不统一的缘故造成数据选择或插入失败,通过AS OF SCN方式则能够确保记录处理的时间点一致。
相关文章推荐
- oracle误删数据恢复
- ORACLE误删数据恢复
- Oracle恢复误删的数据或表,解除锁定SQL或table
- oracle误删数据恢复方法小结
- Oracle表数据误删恢复
- ORACLE误删数据的恢复
- oracle误删数据恢复方法
- oracle恢复删除数据(误删)
- Oracle恢复误删的数据表
- 兴奋啊,使用oracle的flashback搞定误删数据的恢复
- Oracle笔记之 利用快照的方式恢复误删数据
- 关于oracle误删数据的恢复
- Oracle 误删数据恢复
- ORACLE 误删数据的恢复[转]
- Oracle闪回技术之一Oracle 11g 利用FlashTable (闪回表)恢复(用delete)误删的数据
- oracle 表数据 误删时 数据恢复
- oracle之数据误删恢复
- oracle恢复删除数据(误删)
- oracle 误删数据恢复
- oracle 回闪技术恢复误删数据