Oracle的撤回功能

不小心修改了数据库,已经提交了,没有备份,还能恢复吗?碰到这个问题,你多半要哭了。

别担心,Oracle就可以。不要总抱怨Oracle占地方,这个功能关键时刻真能保命。

如果你用到这个功能,说明你之前一定脑抽或手滑了,以后小心吧。

假设你操作了表A,而且提交了。

-- 查10分钟前数据(先回想下干坏事是啥时候)

SELECT * FROM A AS OF TIMESTAMP SYSDATE - INTERVAL '10' MINUTE;

-- 查看指定时间点的数据(需要精准时间)

SELECT * FROM A AS OF TIMESTAMP TO_TIMESTAMP('2026-06-16 17:00:00', 'YYYY-MM-DD HH24:MI:SS');

先搞个备份

create table a_bak as 用上面两种方案的查询语句

直接回滚

-- 第一步:开启表的行移动功能(必须执行)

ALTER TABLE A ENABLE ROW MOVEMENT;

-- 第二步:闪回表到 10 分钟前

FLASHBACK TABLE A TO TIMESTAMP SYSDATE - INTERVAL '10' MINUTE;

-- 第三步:关闭行移动(可选)

ALTER TABLE A DISABLE ROW MOVEMENT;

相关推荐
Shadow(⊙o⊙)3 分钟前
表的增删查改
数据库·mysql
+VX:Fegn08951 小时前
计算机毕业设计|基于springboot + vue外卖点餐系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
盟接之桥2 小时前
线束数字化--先进先出为什么总是停留在纸面上?
大数据·网络·数据库·人工智能·制造·ai编程
adinnet20263 小时前
预算管控:预算执行与偏差问数
大数据·数据库
Omics Pro5 小时前
Cell封面|衰老生物学开源AI工具包
数据库·人工智能·算法·机器学习·自然语言处理
IT枫斗者枫哥12 小时前
MyBatis一对多分页:LIMIT 20,为什么凑不齐20个订单?
java·数据库
Y0012 小时前
PostgreSQL 的锁:为什么你的 ALTER TABLE 会卡住,以及怎么查
数据库·postgresql
灰原喜欢柯南12 小时前
OceanBase 运维管理知识点——OCP 监控、诊断与变更控制
数据库·oceanbase
码农-00412 小时前
Springboot 集成 Ehcache操作数据库显示SQL语句设置
数据库·spring boot·sql
仍然.12 小时前
Redis---事务
数据库·redis