Heim  >  Artikel  >  Datenbank  >  在Oracle中误删除数据后并commit后的数据恢复办法

在Oracle中误删除数据后并commit后的数据恢复办法

WBOY
WBOYOriginal
2016-06-07 17:27:081014Durchsuche

在Oracle中误删除数据后并commit后的数据恢复办法 背景:表A数据误操作,被delete了,恢复。 --1.先备份A表当前数据。 --2.查询某

在Oracle中误删除数据后并commit后的数据恢复办法

背景:表A数据误操作,被delete了,,恢复。

--1.先备份A表当前数据。

--2.查询某时间点前的SCN号码

SELECT MAX(Scn) FROM Sys.Smon_Scn_Time WHERE Time_Dp

--3.查看某时间点的A表数据

SELECT * FROM A AS OF SCN '步骤2的SCN号';

--4.如果查看数据是想要的数据,则恢复

SELECT row_movement FROM user_tables WHERE table_name = 'A';

--5.步骤4结果如果为DISABLE ,则执行下面这句话,否则跳过

ALTER TABLE A  ENABLE ROW MOVEMENT;

--6.执行

FLASHBACK TABLE A TO SCN '步骤2的SCN号';

--7.如果原来为enable则不用执行,否则执行

ALTER TABLE A DISABLE ROW MOVEMENT;

--8.如果权限不够,就换个DBA用户进行上述操作

linux

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn