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;

相关推荐
活宝小娜2 小时前
mysql详细安装教程
数据库·mysql·adb
贤时间2 小时前
codex 助力oracle ebs 开发
数据库·oracle
秉承初心3 小时前
PostgreSQL 数据性能瓶颈突破实战
数据库·postgresql·oracle
Database_Cool_3 小时前
即席查询(Ad-Hoc)数据库选型:AnalyticDB MySQL 秒级 Ad-Hoc 分析方案
数据库·mysql
Nontee3 小时前
新手数据库进阶:一条UPDATE语句的“奇妙漂流”
数据库
赵渝强老师4 小时前
【赵渝强老师】openGauss的数据库
数据库·opengauss·国产数据库·高斯数据库
HackTwoHub4 小时前
Sqli-Scanner SQL注入SKILL自动化挖掘SQL注入,零依赖自动化SQL注入挖掘,赏金猎人
数据库·人工智能·sql·web安全·网络安全·自动化·系统安全
l1t4 小时前
DuckDB对group by cube / rollup / groupping sets查询的优化
数据库·duckdb
Database_Cool_5 小时前
什么是湖仓一体?和数据仓库的本质区别(附 AnalyticDB MySQL 湖仓一体方案)
数据库·数据仓库·mysql