oracle
用delete
误删表数据后可以恢复吗?下面编程教程网小编给大家实操一遍。
1、根据时间进行恢复
select * from DEMO as of timestamp to_timestamp(‘2022-04-02 16:26:11',‘yyyy-mm-dd hh24:mi:ss');
delete执行时间之前都可以,越小越好,本例以1分钟为例
2、执行以下sql进行数据恢复
flashback table DEMO to timestamp to_timestamp(‘2022-04-02 16:26:11',‘yyyy-mm-dd hh24:mi:ss');
3、新建临时表
create table DEMO1 as select * from DEMO as of timestamp to_timestamp(‘2022-04-02 16:30:11',‘yyyy-mm-dd hh24:mi:ss');
4、将demo1表的数据恢复到demo表中
insert into DEMO select * from DEMO1 where not exists (select * from DEMO where DEMO.id=DEMO1.id);
5、根据scn恢复
查询当前的scn号
select current_scn from v$database;
将scn号减少若干,执行下语句,直到能查看到我们delete的数据为止
select * from DEMO as of scn 166937913;
通过合适的scn号,执行下sql语句进行数据恢复
flashback table DEMO to scn 166937913;
完成了!
以上是编程学习网小编为您介绍的“oracle用delete误删表数据后可以恢复吗?”的全面内容,想了解更多关于 mysql 内容,请继续关注编程基础学习网。
沃梦达教程
本文标题为:oracle用delete误删表数据后可以恢复吗?
基础教程推荐
猜你喜欢
- MySQL性能优化之一条SQL在MySQL中执行的过程详解 2024-01-02
- 大型网站的实例分析 掌握构建大型网站的架构 2023-12-28
- Mysql通过explain分析定位数据库性能问题 2023-12-31
- django之对django内置的User模型进行自定义扩展方式 2023-07-28
- 10个MySQL性能调优的方法 2024-01-02
- Oracle listagg去重distinct的三种方式总结 2023-07-23
- 3. Redis-数据类型和指令 2023-09-13
- 如何利用mysql语句来修改密码 2024-12-16
- Jackson2JsonRedisSerializer和GenericJackson2JsonRedisSerializer区别 2023-07-13
- 针对distinct疑问引发的一系列思考 2024-02-14