天天看點

oracle找不到spfile,資料庫切備機啟動過程spfile找不到,和ora-00019,ora-00132問題解決随筆...

昨晚做資料切換,起來備系統, 資料庫10.2.0.4 起不來, 錯誤提示,找不到spfile, 一時想不起來10g rac

如何使用asmcmd copy, 因為發現本該在dgsystem中的spfile, 不知道為何會跑到dgdata中, 同時

似乎多了個dgdata1sas; 同來兄弟也一時沒想到, 度娘稱可以rman copy, 事實上rman copy 隻能控制檔案

資料檔案,唯獨沒有spfile參數檔案, 于是想可以指定startup pfile=$ORACLE_HONE/dbs/init_SID.ora ;

起來執行個體後,可以再create spfile;

操作前 $ vi init_SID.ora, 修改原來+DGSYSTEM/... 為 +DGDATA/..... ;

sqlplus / as sysdba

sql> startup pfile='/oracle/app/oracle/product/10.2.0/db_1/dbs/initkhgldb1.ora' ;

create spfile= '+DGSYSTEM/khgldb/spfilekhgldb.ora' from pfile;

sql> shutdown immediate;

sql> startup

提示有DGDATA1SAS 沒有,裡面的資料檔案沒有找到,;

$export ORACLE_SID=+ASM1

$asmcmd

asmcmd>lsdg

可以看到,但顯示沒有mount. 退回使用sql mount (10g asm 沒有cp, mount ,umount)

sqlplus / as sysdba

sql> select * from v$asm_diskgroup;

sql> alter diskgroup dgdata1sas mount ;

$vi $ORACLE_HOME/dbs/init+ASM1.ora

添加dgdata1sas 到 asm_diskgroups= ,才能保證重新開機後,改組能自動加載

如:

asm_diskgroups='DGSYSTEM','DGDATA2','DGDATA','DGRECOVER','DGDATA1SAS'

全部好了後,重新開機系統.檢查ok

執行個體2起來時報錯: 處理系統參數錯誤ora-00119 ora-00132, local_listener, khgldb2_listener 沒有.

查查結果是:

$對比執行個體1 ,2 :$ORACLE_HOME/network/admin/tnsnames.ora

發現執行個體1 中檔案确實有:

KHGLDB1_LOCAL =

(ADDRESS = (PROTOCOL = TCP)(HOST = khgldb1-vip)(PORT = 1521))

發現執行個體2中檔案确實沒有:

KHGLDB2_LOCAL =

(ADDRESS = (PROTOCOL = TCP)(HOST = khgldb2-vip)(PORT = 1521))

修改正确後, 再起來資料庫,OK