利用闪回恢复数据

今天同事反应数据库中的数据没了,某涨表的数据被谁删了,里面有他重要的测试数据,知道情况后,我就问他大概什么时候没的,他说就不久前,走开了一下,走之前测试的时候还在的,根据他说的这些,被删除的时间应该不长,应该能用闪回查询把数据找回来,后来数据果然找回来了,下面简单用一个例子演示这个过程:

SQL> create table aaa(a int);
Table created.
SQL> insert into aaa values(23);
1 row created.
SQL> commit;
Commit complete.
SQL> select current_scn from v$database; #先记下此时的SCN
CURRENT_SCN
-----------
 7280732925
SQL> select * from aaa;
         A
----------
        23
SQL> delete from aaa;
1 row deleted.
SQL> commit;
Commit complete.
SQL> select * from aaa; #数据已经被删
no rows selected
SQL> select * from aaa as of scn 7280732925; #通过这个查询原来的数据又能查到了
         A
----------
        23
 
这个功能针对一些误操作还是很有用的,当然真实系统上备份才是王道。。。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26463985/viewspace-711792/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26463985/viewspace-711792/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值