建立SPFILE
預設的,ORACLE使用PFILE啟動資料庫,SPFILE必須由PFILE建立,新建立的SPFILE在下一次啟動資料庫時生效,CREATE SPFILE需要SYSDBA或者SYSOPER的許可權:
Create spfile [=’spfilename’] from pfile=[=‘pfilename’];
例:
Create spfile from pfile;
使用spfile
重新啟動資料庫,使用startup命令,Oralce將會按照以下順序在預設目錄中搜尋參數檔案a. spfile${ORACLE_SID}.ora
預設目錄UNIX: ${ORACLE_HOME}/dbs/
NT: ${ORACLE_HOME}\database
b. spfile.ora
預設目錄UNIX: ${ORACLE_HOME}/dbs/
NT: ${ORACLE_HOME}\database
c. init${ORACLESID}.ora
預設目錄UNIX: ${ORACLE_HOME}/dbs/
NT: ${ORACLE_HOME}\database or ${ORACLE_HOME}\admin\db_name\pfile
建立了spfile,重新啟動資料庫,Oracle會按順序搜尋以上目錄,spfile就會自動生效。
修改參數
可以通過ALTER SYSTEM或者匯入匯出來更改SPFILE的內容。
ALTER SYSTEM增加了一個新選項:SCOPE。SCOPE參數有三個可選值:MEMORY、SPFILE、BOTH。
MEMORY:只改變當前執行個體運行
SPFILE:只改變SPFILE的設定
BOTH:改變執行個體及SPFILE
是否使用了spfile
1. 查詢v$parameter動態視圖,如果以下查詢返回空值,那麼你在使用pfile.
2. 或者你可以使用SHOW命令來顯示參數設定,如果以下結果value列返回空值,那麼說明你在使用pfile:
3. 查詢v$spparameter視圖,如果以下查詢返回0值,表示你在使用pfile,否則表明你使用的是spfile:
匯出SPFILE檔案
SPFILE檔案可以匯出為文字檔,使用匯出、建立過程你可以向SPFILE中添加參數。
Create pfile=’/home/oracle/initxu.ora’ from spfile