数据库误修改后的数据恢复

一不小心将数据库数据修改了,而且回滚无效,于是去尝试各种方法恢复数据

数据库误修改后的数据恢复_第1张图片

查询到修改时间点之前的数据

数据库误修改后的数据恢复_第2张图片

恢复数据

数据库误修改后的数据恢复_第3张图片

恢复数据库被修改数据的流程及代码,这里被修改的表是AUTH_USER,实际应用填写对应表名。

-- 通过时间恢复删除且已提交的数据

-- 1)查询当前系统时间

select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;

-- 2)查询删除数据的时间点之前的数据
select * from AUTH_USER as of timestamp to_timestamp('2023-09-06 14:51:37','yyyy-mm-dd hh24:mi:ss');
--(如果不是,则继续缩小范围)

-- 3)恢复删除且已提交的数据

--开启行移动功能(解决执行以下语句报错问题)

alter table AUTH_USER enable row movement;

--恢复某个时间点的数据

flashback table AUTH_USER to timestamp to_timestamp('2023-09-06 14:51:37','yyyy-mm-dd hh24:mi:ss');

--关闭行移动功能

alter table AUTH_USER disable row movement;

恢复方法学习自博客:oracle 数据误删除 恢复到某个时间的数据_oracle恢复某个时间点的数据_耶尔_的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/ye43191/article/details/130594728

你可能感兴趣的:(PL/SQL,oracle,oracle,apex,数据库,pl/sql,oracle,sql)