什么';Oracle Flashback数据库和Oracle(保证)恢复点之间的区别是什么?

什么';Oracle Flashback数据库和Oracle(保证)恢复点之间的区别是什么?,oracle,restore,rollback,flashback,Oracle,Restore,Rollback,Flashback,我的团队计划很快对我们的应用程序进行一系列非常大的更新,包括一些重大的数据库更新(Oracle 11gR2)。当我编写脚本恢复所有数据库更新(作为回滚应急)并研究Oracle的潜在功能时,我遇到了一个问题。我看到闪回使用“闪回日志”将数据库恢复到特定状态。我还看到,还原点使用系统更改编号将数据库标记为书签\ 表示flashback将“将表返回到10分钟前的状态”,但这是否意味着数据也将被还原?(我们也有很多参考表) 这些Oracle功能中的任何一项都有助于撤消数据库更新,同时保持生产数据的完整

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

表示flashback将“将表返回到10分钟前的状态”,但这是否意味着数据也将被还原?(我们也有很多参考表)



这些Oracle功能中的任何一项都有助于撤消数据库更新,同时保持生产数据的完整性吗?我不清楚这两个特性在实践中的作用以及它们之间的区别

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

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

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


因此,如果在转换期间只允许对一个连接进行DB访问,实际上没有什么区别?@dev\u feed我倾向于在单用户开发环境中这样认为。但是,如果您想在prod中使用相同的方法,我强烈建议您让Oracle DBA参与进来。现在看来,RMAN或导出/导入可能是更好的选择。它们在这种情况下会更有用吗?@dev_feed基于不同的情况,备份和恢复场景太多了。在不了解数据库项目的范围和细节的情况下,很难给出一般性的答案。再次与DBA交谈。