专业编程教程与实战项目分享平台

网站首页 > 技术文章 正文

Oracle误修改或者删除数据恢复 oracle如何恢复修改的数据

ins518 2024-10-13 05:59:19 技术文章 16 ℃ 0 评论

在Oracle中如果误删除或者修改某个表的数据,怎么恢复呢?

假如你误操作的时间不超过15分钟(数据库默认的回滚保持段里的数据时间),就是可以使用一下方法恢复数据

  1. 样例表TB_JIMMY_TEST 数据如下

2.delete TB_JIMMY_TEST where id = '1' --误删除了其中一条数据

3.select sql_text,first_load_time,last_load_time from V$SQL where sql_text like '%delete TB_JIMMY_TEST%';--查看自己执行过的sql和最后执行时间,这里查到最后执行时间是22点17分

4.create table tb_jimmy_test_tmp as select * from TB_JIMMY_TEST as of timestamp to_timestamp('2017-09-24 22:16:00','yyyy-mm-dd hh24:mi:ss');--创建一个临时表,用来保存22点16分之前的数据

5.drop table TB_JIMMY_TEST;--删除原来的表

6.alter table tb_jimmy_test_tmp rename to TB_JIMMY_TEST;--更改临时表的表名

现在就找回了原来误删除的那条数据。

当然这个要求你误操作的时间不超过15分钟,你可以修改默认的undo_retention参数设置(ALTER SYSTEM SET undo_retention=10800 SCOPE=BOTH)

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表