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;

相关推荐
云和恩墨7 小时前
数据库一体机简史:从ODA到zData X,命名之中的玄机
数据库·vr
数据库小学妹8 小时前
KES是什么?国产数据库技术架构、核心能力与选型实战解析
数据库·经验分享·架构·国产数据库·数据库选型·信创数据库
Database_Cool_9 小时前
向量检索加速首选:阿里云 Tair 内置向量能力毫秒级召回
数据库·阿里云
强健的石头9 小时前
django文件对象是什么?
数据库·django·sqlite
ClouGence10 小时前
保障公共安全,一线治安机构实时数据应用与实践
数据库·mysql·postgresql
烟漠河洛10 小时前
线上事故复盘:Redis幂等性设计边界没覆盖跨状态请求,订单状态机直接崩了
数据库·redis·缓存
Minxinbb11 小时前
TDSQL for MySQL 服务器重启操作
数据库·mysql·dba
SelectDB11 小时前
Doris 实战:用 Colocate Join 消除 Shuffle,AB 指标计算性能提升 145 倍 🚀
数据库·性能优化·ab测试
PawSQL11 小时前
PawSQL 技术月报 | 2026年6月
数据库·sql·tdsql·pawsql·sql审核
SelectDB11 小时前
Apache Doris 在 AgentLogsBench 中领先,支撑 Agent 可观测性生产负载
运维·数据库·agent