项目场景:
rman备份异机恢复,单实例
问题描述:
利用spfile动态参数文件数据库启动报错ORA-01261,ORA-01262
原因分析:
目标库开启了闪回,但是没有创建闪回目录或者不小心删除了闪回目录fast_recovery_area,但是动态参数文件spfile中记录了闪回目录位置等信息,所以启动时检索不到报错。
解决方案:
第一步:在闪回区原路径下重新创建fast_recovery_area,再次尝试启动,依然报错:ora-00205
这是因为动态参数文件中不仅记录了闪回区的信息还记录了控制文件的路径。一般控制文件都是有两个路径,一个是在oradata中,一个是在闪回区fast_recovery_area中。所以,
第二步:先关闭数据库,
shutdown immediate;
再进去
sqlplus / as sysdba
因为spfile动态参数文件是不支持vim编辑的,所以我们先利用动态参数文件创建一个静态参数文件
create pfile from spfile;
exit
然后再去vim编辑pfile,将control_files的后面这部分删掉,保存
vi $ORACLE_HOME/dbs/initorcl.ora
再利用pfile去生成新的spfile
sqlplus / as sysdba
create spfile from pfile='$ORACLE_HOME/dbs/initorcl.ora
startup;
数据库正常启动。
搞定,下课^0^