Oracle # 误delete或update数据还原(恢复)方法记录

本文详细介绍如何使用Oracle数据库的闪回功能恢复误更新的数据。包括确定误操作时间点、查询预览数据状态及实际执行闪回恢复指令的全过程。针对特定错误,如ORA-08189,提供了开启行迁移的解决方案。

1、首先想一下,你是什么时候误更新的。

说明:
select * from 数据表名称 as of timestamp to_timestamp
('2019-11-17 11:20:00','yyyy-mm-dd hh24:mi:ss');


示例:
select * from LOCALDURATION as of timestamp to_timestamp
('2019-11-17 11:20:00','yyyy-mm-dd hh24:mi:ss');

这个时间就是误更新的时间或之前 
查询出来看一下数据是不是你想要还原成的样子的数据

2、然后,就可以闪回了

说明:
flashback table 数据表名称
to timestamp to_timestamp('2019-11-17 11:20:00','yyyy-mm-dd hh24:mi:ss');

示例:
flashback table LOCALDURATION 
to timestamp to_timestamp('2019-11-17 11:20:00','yyyy-mm-dd hh24:mi:ss');

闪回到你上面想还原到的时间点

 

特殊说明:

如果遇到如下错误:(注:如果报错ORA-08189: cannot flashback the table because row movement is not enabled 就输入下面的一段,开启行迁移,就可以了。

请先执行以下代码:

说明:
alter table 数据表名称 enable row movement;

示例:
alter table LOCALDURATION enable row movement;

然后在执行步骤2。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值