Oracle參數文件有三種:
spfile: spfile
pfile: init
init: init.ora
參數文件的默認路徑為:
$ORACLE_HOME/dbs (UNIX)
當數據庫啟動時,oracle會按spfile
1. 如何確定當前數據庫是否以spfile參數文件啟動
sql> show parameter spfie;
若value列有值,則說明以spfile啟動。
2. 如何修改參數文件
sql>alter system set timed_statistics=false scope=spfile;
scope可以有三種值:
spfile:修改spfile中的參數值
memory:修改當前內存中的參數值
both:修改內存及spfile參數文件中的參數值
ps:不是所有參數都可以這樣修改的。在v$system_parameter中有issys_modifiable和isses_modifiable兩個字段標志是否可以修改。所有參數值都可以從v$system_paramete中得到。
3. “ORA-32001: write to SPFILE requested but no SPFILE specified at startup”錯誤,因為沒有用spfile參數文件啟動數據庫。解決辦法:
1) 檢查默認路徑$ORACLE_HOME/dbs下是否存在spfile
2) 若不存在,重新生成spfile
create spfile from pfile;
3) 重啟數據庫。
4) 重新執行alter system…命令。
4. 如何根據現有非默認路徑下的spfile或pfile參數文件啟動數據庫
sql>startup pfile=‘<路徑>’;
sql>startup spfile=‘ <路徑>’