通过flashback恢复数据的表
删除表通过flashback恢复(执行flashback由DB_FLASHBACK_RETENTION_TARGET参数 能恢复多久以前的操作)
首先需要开启flashback
查询是否开启
select open_mode,flashback_on from v$database;

创建一张测试表(如果是sys用户会提示无法执行flashback)
create table t1 select * from system.help where rownum<6;
查询表数据是否有写入t1表
select count(*) from t1;

开始进行删除表操作
在sqlplus窗口执行 set time on以及!cal
delete from t1 where username is not nul; (记录删除的时间)
commit;

查询表的记录数
select * from t1;
开始执行flashback恢复t1的记录
开启行移动
alter table t1 enable row movement;
执行flashback操作
flashback table t1 to timestamp to_timestamp('2026-09-22 16:22:05','YYYY-MM-DD HH24:MI:SS');

查询flashback后t1表的记录


浙公网安备 33010602011771号