今天同僚在做DB雙機切換的時候發現oracle的spfile檔案作為+DG_DATA 下的一個資源,本意是在+DG_ORA下後來發現spfile的路徑建錯了
問題背景:今天同僚在做DB雙機切換的時候發現Oracle的spfile檔案作為+DG_DATA 下的一個資源,本意是在+DG_ORA下後來發現spfile的路徑建錯了,但是重建帶來一個問題啟動的時候使用預設啟動方式spfile,在此場景下直接修改spfile的路徑是不合法的,是以想到使用pfile作為中間臨時存儲
實作過程:【sqlplus / as sysdba】
1、在spfile場景下建立pfile: SQL> create pfile='/opt/oracle/init_pfile.ora';
2、建立新spfile: SQL> create spfile='+DG_ORA/${ORACLE_SID}/spfile${SID}.ora' from pfile='/opt/oracle/init_pfile.ora';
3、停止資料庫,,以pfile方式啟動:SQL> startup pfile='/opt/oracle/init_pfile.ora';
4、修改spfile的路徑: SQL> alter system set spfile='+DG_ORA/${ORACLE_SID}/spfile${SID}.ora';
5、停止資料庫,重新以spfile方式啟動:SQL> startup
6、查詢spfile的路徑: SQL> show parameter spfile;
小結:spfile與pfile之間可以互相切換備份,最好兩者都有備份檔案,最好是在一個日期同時備份的,這樣便于恢複時的一緻性。
