如何給asm管理的db映象controlfile

warehouse發表於2009-09-02
由於asm管理的db包含的controlfile無法直接複製,因此給asm管理的db映象controlfile就不能shutdown db之後複製控制檔案,下面透過重新重建controlfile的辦法來給asm管理的db增加controlfile的映象[@more@]

步驟如下:
1、SQL> show parameter spfile

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string E:ORACLEPRODUCT10.2.0DB_1
DATABASESPFILETEST.ORA
開啟SPFILETEST.ORA其引數如下:
test.__java_pool_size=4194304
test.__large_pool_size=4194304
test.__shared_pool_size=54525952
test.__streams_pool_size=0
*._awr_flush_threshold_metrics=TRUE
*.audit_trail='DB_EXTENDED'
*.control_files='+DG1/test/control01.ctl','+DG1/test/control02.ctl','+DG1/test/control03.ctl'
*.dispatchers='(PROTOCOL=TCP) (dispatchers=5)'
*.nls_date_format='yyyy/mm/dd hh24:mi:ss'
*.resource_manager_plan='OLAP_PLAN'
*.shared_servers=0
*.undo_retention=0
*.SPFILE='+DG1/TEST/spfileTEST.ora'
--====================================
從引數spfile得知這個db使用的真實spfile其實是+DG1/TEST/spfileTEST.ora
透過修改引數control_files來增加一個mirror可以修改成功,可發現最終修改的
是E:ORACLEPRODUCT10.2.0DB_1DATABASESPFILETEST.ORA中的引數control_files,
而SPFILE='+DG1/TEST/spfileTEST.ora裡面的引數control_files卻始終無法修改,
於是想了一個辦法,首先建立pfile
2.SQL> create pfile from SPFILE='+DG1/TEST/spfileTEST.ora';

檔案已建立。
之後手動編輯pfile檔案,增加control_files的mirror:'+DG1/test/control04.ctl'
3.暫時隱藏E:ORACLEPRODUCT10.2.0DB_1DATABASESPFILETEST.ORA
使用E:ORACLEPRODUCT10.2.0DB_1DATABASEINITTEST.ORA來啟動db到nomount
4.之後重建controlfile,此時mirror就被加上了
5.SQL> create spfile='+DG1/TEST/spfileTEST.ora' from pfile;

檔案已建立。
6.還原E:ORACLEPRODUCT10.2.0DB_1DATABASESPFILETEST.ORA
最後mirror controlfile成功,感覺略顯麻煩,不知道是否有更簡單的辦法。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/19602/viewspace-1026589/,如需轉載,請註明出處,否則將追究法律責任。

相關文章