崩溃恢复是指单个实例的数据库在发生实例故障后进行恢复的过程。崩溃恢复的主要目标是恢复由于实例崩溃而丢失的位于缓存中的数据。
在进行崩溃恢复时,Oracle利用联机重做日志
中的信息来恢复已经提交的事务对数据库所做的修改,而不需要使用归档重做日志文件。崩溃恢复是由Oracle在打开数据库时自动完成的,不需要DBA进行任何干预。
介质恢复根据恢复的对象可以分为数据文件介质恢复和数据块介质恢复。数据块的介质恢复只在RMAN中通过特殊的方式来进行。数据文件的介质恢复是指对数据库中丢失或损坏的数据文件(或控制文件)进行恢复,其主要特点如下:
①需要利用备份来对丢失或损坏的数据文件进行还原。
②需要使用归档重做日志文件或联机重做日志文件进行修复。
③需要用户以手工方式进行操作,而不能完全由Oracle自动完成。
参数文件
控制文件
数据文件
如果数据库中存在需要进行介质恢复的联机数据文件,那么在完成介质恢复之前,数据库是无法打开的。介质恢复一般是在打开数据库之前进行的,在完成介质恢复之后,如果数据库还需要进行崩溃恢复,那么将在打开数据库时自动进行崩溃恢复。
数据块的介质恢复只能在一些特殊的情况下采用。如果数据库中所有的联机数据文件都没有问题,只是有少数数据块发生了损坏,这时只对损坏的数据块进行介质恢复,而不是对包含这些数据块的数据文件进行介质恢复。RMAN提供了数据块的介质恢复功能。