oracle-使用delete误删数据后的恢复方法

今天误删数据,学习到了使用闪回恢复数据的方法
通过闪回日志可以使数据库恢复到过去的某个状态

-- 查看对应时间点对应表的数据
select * from 'table_name' as of timestamp to_timestamp('2023-11-04 07:00:00','yyyy-mm-dd hh24:mi:ss')
-- 如果被禁用行移动
alter table 'table_name' endable row movement;
-- 使用闪回恢复数据
flashback table 'table_name' to timestamp to_timestamp('2023-11-04 07:00:00','yyyy-mm-dd hh24:mi:ss');
-- 恢复禁用行移动
alter table 'table_name' disable row movement;

查询过程中的参考
[Oracle Oracle 10g中启用/禁用ROW_MOVEMENT的影响]( https://geek-docs.com/oracle/oracle-questions/27_oracle_what_is_the_impact_of_enablingdisabling_row_movement_in_oracle_10g.html#:~:text=如果ROW_MOVEMENT被禁用,对表进行UPDATE或DELETE操作时不需要移动受影响的行。 ,%E7%9B%B8%E5%8F%8D%EF%BC%8COracle%E5%B0%86%E6%8F%92%E5%85%A5%E6%96%B0%E7%9A%84%E8%A1%8C%E5%B9%B6%E6%A0%87%E8%AE%B0%E6%97%A7%E8%A1%8C%E4%B8%BA%E5%88%A0%E9%99%A4%E3%80%82%20%E8%BF%99%E5%B0%86%E5%AF%BC%E8%87%B4%E8%A1%A8%E4%B8%AD%E5%AD%98%E5%9C%A8%E5%A4%A7%E9%87%8F%E5%B7%B2%E5%88%A0%E9%99%A4%E4%BD%86%E6%9C%AA%E8%A2%AB%E6%B8%85%E7%90%86%E7%9A%84%E8%A1%8C%EF%BC%8C%E4%BB%8E%E8%80%8C%E6%B5%AA%E8%B4%B9%E5%AD%98%E5%82%A8%E7%A9%BA%E9%97%B4%E3%80%82)
Oracle Flashback 详解
oracle误删除数据的恢复方法

posted @ 2023-11-04 10:35  ayubene  阅读(349)  评论(0)    收藏  举报