篆体字作品 | 篆体字知识 | 加入收藏 篆体字转换器软件可转换多种篆体字在线预览 网页版 V2.0
篆体字转换器

当前位置:篆体字网 > 知识库 >

oracle数据恢复

时间:2023-12-31 02:00:17 编辑:篆字君 来源:篆体字网

如何将勿操作truncate的表恢复回来

由于对于truncate命令没有回滚方法来还原,因此就需要对数据库进行恢复操作以将数据恢复回表中。
本文中将给出truncate命令后的恢复思路及步骤:

RECOVER DATABASE UNTIL TIME 恢复步骤方案

注意: 在开始使用旧备份进行数据库恢复前,对当前数据库做好备份

当时是否有表的export dump文件可用?
a. 有 ->import导入文件还原表数据
b. 没有 ->跳转至步骤2 数据库是否在archivelog模式下?
a. 是 ->跳转至步骤3
b. 不是 ->跳转至步骤4 数据库在归档模式下。那么可以使用备份归档至数据库某个表被truncate前的时间点。
a. 恢复数据库备份至另一个位置。
b. 使用RECOVER DATABASE UNTIL TIME .....将数据库recover到truncate之前某个时间点。
c. 从恢复的数据库中导出所需的表数据。
d. 将数据import会原库对应被truncate数据的表中。
e. 工作已经完成,将恢复的库删掉即可。 数据库不在归档模式下, 因此没有方法将数据库恢复到truncate之前的时间点。
你需要联系Oracle或更第三方专业Oracle数据恢复专家来帮忙处理。

你也可以使用FLASHBACK来回滚到TRUNCATE前以找到所需恢复的数据。
下面的步骤将使用FLASHBACK来将数据库恢复到表TRUNCATE之前,然后使用数据库恢复方法将数据库回到当前时间点。

给表MYOBJ插入数据行 - 这表会在之后被truncate获取SCN - FLASHBACK将需要回到这个时间点TRUNCATE表同时我们更新数据库中其它表以验证在FLASHBACK后再进行的数据库恢复将数据库回到最新状态。关闭数据库并进行FLASHBACK以只读方式打开数据库并导出被误truncate的表数据,导出的数据会在数据库recover后被导回去。关闭数据库后,重新mount库并进行recover正如所看到到,在数据库recover后,被truncated的表继续为0行数据,我们可以将已经导出的表数据导入恢复即可。作为对比,我们可以看到recover后的scott.myobj2表行数。

Copyright:2021-2023 篆体字转换器 www.dddtedu.com All rights reserved.