1

我的团队计划很快对我们的应用程序进行大量更新,包括一些重要的数据库更新(Oracle 11gR2)。当我正在编写将恢复所有数据库更新的脚本(作为回滚应急措施)并研究潜在的 Oracle 特性时,我遇到了这个 Oracle 文档。我看到闪回使用“闪回日志”将数据库恢复到特定状态。我还看到还原点使用系统更改号为数据库添加书签。\

这个 SO 问题说闪回将“将表恢复到 10 分钟前的状态”,但这是否意味着数据也会被恢复?(我们也有很多参考表)


这些 Oracle 特性中的任何一个对于撤消我们的数据库更新同时保持生产数据的完整性是否有用?我不清楚这两个功能在实践中的作用以及它们有何不同。

4

2 回答 2

1

主要区别在于闪回将包括其他人对整个表或数据库所做的更改在内的更改回滚到闪回设置范围内过去的任何时间点。回滚到恢复点只会回滚您在事务中所做的更改,其他人的更改不会受到影响。

于 2014-03-12T19:12:08.400 回答
0

当您创建保证还原点时,它将保留足够的闪回日志以将数据库闪回到保证还原点。

必须使用 DROP RESTORE POINT 语句手动删除有保证的还原点。保证还原点不会过期。如果您不这样做,那么闪存恢复区域将无限增长,直到文件系统或磁盘组变满...

闪回数据库到还原点

于 2017-09-26T12:32:55.400 回答