Crash/Instance Recovery与Media Recovery的本质区别

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

Crash/Instance Recovery与Media Recovery的本质区别在于: Crash/Instance Recovery针对需要恢复的实例从增量检查点(incremental checkpoint)开始apply redo应用重做日志。由于日志覆盖的先提条件是完成相关日志的logfile switch checkpoint,且从定义上说归档日志总是落后于实例的检查点,所以对于crash/instance recovery崩溃或实例恢复总是只需要访问读取在线的重做日志(online redo logfile)。   介质恢复Media Recovery从旧数据文件的检查点开始apply redo引用重做日志,这些旧的数据文件可能来源于备份。 介质恢复情况下需要用到归档重做日志,因此RMAN或DBA(用户管理的备份)也需要将备份相关的归档日志还原出来。   Crash/Instance Recovery总是保证仅当所有的持久重做数据被应用之后才算恢复完成。 在Oracle保证所有已提交的事务都已经被包含恢复的情况下,才认为崩溃实例完成了恢复工作。   相反,介质恢复有不完全恢复(incomplete recovery)和部分恢复(partial recovery)的提法,以实现恢复数据库(db)到某个时间点的一致性。     Crash/Instance Recovery与Media Recovery的相同点在于:   Crash/Instance Recovery与Media Recovery都是传统的前滚恢复方式(rolling forward),原理上都是对持久redo log数据的重演。 不管是Crash/Instance Recovery还是Media Recovery的前滚,都需要继之以事务回滚以便回滚未提交的事务,虽然前滚完成后数据库即可以打开而不用等回滚完成,但是仅在回滚完成的时候我们认为数据库是真正一致的。   扩展阅读: 了解你所不知道的SMON功能(五):Recover Dead transaction 深入了解Oracle前滚恢复rolling forward(一) 了解你所不知道的SMON功能(六):Instance Recovery



本文转自maclean_007 51CTO博客,原文链接:http://blog.51cto.com/maclean/1278441

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
存储 数据库
Hybrid Backup Recovery
果您使用的是HBR(Hybrid Backup Recovery)混合云备份服务,可能存在以下几种情况导致数据库相关的计费仍在进行:
68 0
|
Go 数据库
|
SQL Oracle 关系型数据库
ORA-01033: ORACLE initialization or shutdown in progress的两种解决方法
ORA-01033: ORACLE initialization or shutdown in progress通常是由于ORACLE数据库文件损坏引起的,以下是出现的问题及解决方法: 现象一: sysdba可以登录,但是在使用中就出现“数据库未打开,仅允许在固定表/视图中查询”,而normal用户无法登录使用,出现ORA-01033: ORACLE initialization or shutdown in progress 的错误。
1886 0
|
Oracle 关系型数据库 数据库
ORA-01033:ORACLE initialization or shutdown in progress解决方法
ORA-01033:ORACLE initialization or shutdown in progress解决方法
|
Oracle 关系型数据库 数据库