【RMAN】如果控制文件损坏那么如何恢复?恢复控制文件的方式有哪几种?
真题1、如果控制文件损坏那么如何恢复?恢复控制文件的方式有哪几种?
答案:如果控制文件有多个,而只损坏了单个控制文件,那么只需要关闭数据库,拷贝其它好的控制文件覆盖掉坏的控制文件即可。也可以修改参数文件,只保留1个控制文件。如果损坏了全部控制文件,那么需要重新创建控制文件或从备份恢复。在有控制文件备份的情况下,restore controlfile命令可以用来还原控制文件。在还原控制文件后需要对数据库执行完全介质恢复并以resetlogs选项来打开数据库。
RMAN可以将控制文件还原到它的默认存储位置,也可以使用restore controlfile ... to destination来指定控制文件的恢复位置。当还原控制文件时,控制文件的默认位置是由参数control_files控制的。如果没有设置control_files参数,那么数据库判断还原控制文件存储位置的规则将会与没有设置control_files参数时创建控制文件时使用的规则一样。
如下命令可以从备份集中恢复控制文件:
restore controlfile from \'/bak/OCPLHR1/ctl_OCPLHR1_20180322_64_1.bak\';
restore controlfile to \'/home/oracle/a.ctl\' from \'/bak/OCPLHR1/ctl_OCPLHR1_20180322_64_1.bak\' ;