在oracle中,sid是「System IDentifier」的縮寫,是資料庫的唯一標識符,是在建立資料庫時系統自動賦予的初始ID,是以環境變數的形式出現的,用於將系統上fork的程序與其他實例進行區分。
本教學操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。
SID是System IDentifier的縮寫,而ORACLE_SID就是Oracle System Identifier的縮寫,在Oracle系統中,ORACLE_SID以環境變數的形式出現,在特定版本的Oracle軟體安裝(也就是ORACLE_HOME)下,當Oracle實例啟動時,作業系統上fork的程序必須透過這個SID將實例與其他實例區分開來,這就是SID的作用。
SID的意思是oracle資料庫的唯一識別碼是你在建立一個資料庫時系統自動賦予的初始ID。
SID是在一些DBA操作以及與作業系統交互,從作業系統的角度存取實例名,必須透過ORACLE_SID(作業系統的環境變數),且它在登錄中也是存在的。而資料庫名稱是在安裝資料庫、建立新的資料庫、建立資料庫控製檔案、修改資料結構、備份與復原資料庫時都需要使用到的。
我們知道Oracle的實例(instance)是由一塊共享記憶體區域(SGA)和一組後台進程(background processes)共同組成;而後台進程正是資料庫和作業系統進行交互的通道,這些進程的名稱就是透過ORACLE_SID決定的。
實例的啟動只需要一個參數文件,這個參數文件的名稱就是由ORACLE_SID決定的。對於init文件,缺省的文件名稱是init.ora,對於spfile文件,缺省的文件名為spfile.ora,Oracle依據ORACLE_SID來決定和尋找參數文件啟動實例,參數文件的缺省位置為$ORACLE_HOME/ dbs(Windows上為$ORACLE_HOME\database目錄)。
spfile從Oracle 9i開始引入並成為了缺省使用的參數文件,Oracle啟動實例時按照以下順序從缺省目錄查找參數文件:spfile.ora 'spfile.ora 'init.ora。如果這3個檔案都不存在,則Oracle實例將無法啟動.
透過這些資訊可以知道,在同一個ORACLE_HOME下,Oracle能夠根據ORACLE_SID將實例區分開來;但是如果在不同的ORACLE_HOME下,Oracle將不會屏蔽相同名稱的ORACLE_SID,也就是說,在同一台主機的不同ORACLE_HOME下,Oracle也是能夠建立相同ORACLE_SID的實例的。
推薦教學:《Oracle影片教學》
以上是oracle中sid是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!