现在我们看一下用户执行了SQL并且损坏了数据库的情况。用户通知了命令中心并且报告了错误。系统分析师通过与公司不同部门的另外一些人协商治理这次事件。恢复通过从备份中重新存储所有的数据文件并且向前回滚redo日志到希望的时间点而完成。恢复时间与数据库的规模成正比,而不是需要恢复的更改的数量。这就意味着恢复时间(MTTR)实际上随着数据库的规模增长而不断增加。 重现数据库 在Oracle 10g中,一项新的重现技术特性,称为Flashback Database(重现数据库)的,作为传统恢复的替代品引入了。重现数据库可以让你快速恢复整个数据库到先前的某个时间点,而不需要从备份中重新存储数据库。在数据库中经常被描述为倒转按钮,它只是将那些被修改的数据块恢复到你希望的恢复时间之前。然后应用Redo更改记录来达到希望的恢复时间点。这个被修改的数据块就叫做重现日志。 重现数据库提供了相对于传统数据库非常明显的优势。对于分析型数据库则没有这么明显的优势。在数据仓库中,块的操作通常是以不记录日志的模式执行的。在重现数据库中,只要数据库运行的是文档日志模式,它就可以返回到块操作之前的某个状态,因为被修改的块可以通过恢复而撤销执行的操作。 注重:虽然重现数据库是集成到数据库中的,但是它在Oracle的 EXPRess Edition (XE)中是不可用的。
这里我们看一下用户执行了SQL并且损坏了数据库的情况。用户通知了应用程序数据库治理员,他执行了重现数据库命令,数据库自动恢复到损坏之前的某个点。重现数据库很快,使因为它只针对被修改的数据进行操作。重现的时间与犯错误的数量有关,而与数据库的规模无关。 配置重现数据库 以下的例子演示了命令行配置。这也可以用企业治理器来完成。 在我们配置重现数据库之前,我们需要照顾以下一些先决条件。 Flash Recovery Area 首先,我们需要配置一个Flash Recovery Area (FRA)。在10g中,这是个新东西,FRA只不过是一个恢复相关文件的磁盘定位。对于重现数据库,一个新的后台进程,名为Recovery Writer (RVWR),在来自SGA的数据库重现缓存的映像之前,阶段性地写入磁盘,作为FRA中的重现日志。重现日志是在FRA中由Oracle数据库自动治理的。新闻热点
疑难解答