1. 程式人生 > >Oracle初始化引數檔案spfile 和 pfile

Oracle初始化引數檔案spfile 和 pfile

(一)初始化引數檔案

例項啟動時Oracle將讀入初始化引數檔案的每個引數項 ,引數檔案有兩種型別的引數

1)顯示:在該檔案中有一個引數項。

2)隱式:在該檔案中沒有引數項,但使用Oracle的預設值

可以有多個初始化引數檔案共存檔案中引數項的變化何時起作用取決於所使用的初始化引數檔案的型別(spfile和pfile)

(二)pfile--initSID.ora

PfileParameter File,引數檔案)是基於文字格式的引數檔案,含有資料庫的配置引數。PFILE - initSID.ora(預設PFILE名稱),位置在$ORACLE_HOME/dbs目錄下面。 這是一個文字檔案,可以用任何文字編輯工具開啟。所做的修改要在例項下次啟動時才起作用,

只在例項啟動期間讀取.

建立pfile

1)從樣本檔案init.ora開始建立PFILE:該樣本檔案是由OracleUniversal Installer安裝的,使用作業系統的複製命令複製樣本檔案,檔案由資料庫的SID來唯一的標識

cpinit.ora $ORACLE_HOME/dbs/initorcl.ora

2)從SPFILE檔案來建立PFILE檔案 create pfile='$ORACLE_HOME/dbs/initorcl.ora' fromspfile; 3)如果例項沒有關閉,可以從memory建立 create pfile='$ORACLE_HOME/dbs/initorcl.ora
' from memory;
(三)SPFILE——spfileSID.ora

SPfileServer Parameter File,伺服器引數檔案)是基於二進位制格式的引數檔案,含有資料庫及例程的引數和數值,但不能用文字編輯工具開啟。由Oracle伺服器來維護,總是存在伺服器端,能夠在不關閉例項的情況下改變初始化引數,也可將這種變化儲存到下一次例項重啟,可以使恢復管理器(RecoveryManager)支援對初始化引數檔案的備份。可以自己調整一些初始化引數的值

動態修改引數

alter system set parameter=Value

scope=spfile|both|memory};

設定引數是指定SCOPE選項 SCOPE=SPFILE:對於動態和靜態引數,更改在下一次啟動後生效,並且永久保持有效。對於靜態引數來說,只允許指定該值 SCOPE=MEMORY:此更改僅應用到記憶體中且更改立即生效,對於靜態引數,不允許指定該值。 SCOPE=BOTH:對當前例項進行更改,且更改立即生效,對於靜態引數,不允許指定該值。

建立SPFILE

1)從PFILE檔案來建立SPFILE檔案

CREATESPFILE = ‘$ORACLE_HOME/dbs/spfileorcl.ora

FROMPFILE = ‘$ORACLE_HOME/dbs/initorcl.ora;

3)如果例項沒有關閉,可以從memory建立 create spfile='$ORACLE_HOME/dbs/initorcl.ora' from memory; (四)搜尋順序 啟動例項時按以下順序搜尋引數檔案 1.搜尋spfile<SID>.ora 2.如果未找到spfile<SID>.ora,則搜尋spfile.ora 3.如果未找到spfile.ora,則搜尋 init<SID>.ora 指定PFILE可以改變優先次序

STARTUP PFILE = $ORACLE_HOME/dbs/initorcl.ora;