您好,登錄后才能下訂單哦!
一、摘要
ORACLE中的參數文件是一個包含一系列參數以及參數對應值的操作系統文件,可以分為兩種類型PFile and SPFile。
它們是在數據庫實例啟動時候加載的,決定了數據庫的物理結構、內存、數據庫的限制及系統大量的默認值、數據庫的各種物理屬性、指定數據庫控制文件名和路徑等信息,是進行數據庫設計和性能調優的重要文件。
初始化參數文件(Initialization Parameters Files),Oracle 9i之前,ORACLE一直采用PFILE方式存儲初始化參數,該文件為文本文件。
服務器參數文件(Server Parameter Files),從Oracle 9i開始,Oracle引入了SPFILE文件,該文件為二進制格式,不能通過手工修改。
scope=both 立即并永久生效(默認模式)
scope=spfile 下次啟動才能生效
scope=memory 立即生效但下次啟動時失效
方法1. 查看動態視圖
SELECT NAME, VALUE, DISPLAY_VALUE FROM V$PARAMETER WHERE NAME ='spfile';
方法2. 查看參數
SQL> show parameter spfile
SQL> show parameter pfile
方法1:查詢動態視圖V$PARAMETER,如果VALUE值為非空,則是SPFILE啟動,否則是PFILE。
SELECT name, value, display_value FROM v$parameter WHERE name ='spfile';
方法2:SHOW PARAMETER命令查看
SQL> show parameter spfile;
方法3:通過v$spparameter視圖,如果一下查詢返回0值,表示你在使用pfile,否則表明你使用的是spfile
SQL> SELECT COUNT(1) FROM v$spparameter WHERE value is not null;
此v$spparameter的值來自于spfile文件定義,并在動態性能視圖中顯示
二、PFile 和 SPFile的區別
1:PFILE是文本文件的,而SPFILE是二進制格式的。
PFILE文件可以用文本編輯器打開手工配置、而SPFILE不行,只能通過SQL命令在線修改。
從操作系統上可以看到這兩者的區別,初始化參數文件為ASCII文本文件,SPFILE為數據文件。
2:SPFILE的修改是可以通過SQL命令在線修改,不再需要通過手工修改,對于動態參數所有更改可以立即生效,而PFILE的修改必須重啟實例才能生效。
3:手動創建數據庫而不是通過DBCA,則開始創建數據庫時,只能定義PFILE。
創建數據庫完成后再通過PFILE定義SPFILE
三、Oracle啟用參數文件順序
Step1. spfile<sid>.ora
Unix/Linux缺省存放目錄 $ORACLE_HOME/dbs/
Step2. spfile.ora
Unix/Linux缺省存放目錄 $ORACLE_HOME/dbs/
Step3. init<sid>.ora
Unix/Linux缺省存放目錄 $ORACLE_HOME/dbs/
使用BOTH選項實際上等同于不帶參數的ALTER SYSTEM語句
select name,value,ISSYS_MODIFIABLE from v$parameter;
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。