Oracle數(shù)據(jù)庫系統(tǒng)是一個復(fù)雜的軟件系統(tǒng)。所謂Oracle的體系架構(gòu),是指Oracle數(shù)據(jù)庫管理系統(tǒng)的的組成部分和這些組成部分之間的相互關(guān)系,包括內(nèi)存結(jié)構(gòu)、后臺進程、物理與邏輯結(jié)構(gòu)等。
下圖為Oracle數(shù)據(jù)庫體系總體圖:
Oracle數(shù)據(jù)庫的體系很復(fù)雜,復(fù)雜的原因在于它最大限度的節(jié)約內(nèi)存,從上圖可以看出,它在整體上分實例和數(shù)據(jù)庫文件兩部分。
一、實例(Instance):指數(shù)據(jù)庫服務(wù)器的內(nèi)存及相關(guān)處理程序,它是Oracle的心臟。與Oracle性能關(guān)系最大的是SGA(System Global Area,即系統(tǒng)全局區(qū)活共享內(nèi)存區(qū)),SGA包含三個部分:
1、數(shù)據(jù)緩沖區(qū),可避免重復(fù)讀取常用的數(shù)據(jù);
2、日志緩沖區(qū),提升了數(shù)據(jù)增刪改的速度,減少磁盤的讀寫而加快速度;
3、共享池,使相同的SQL語句不再編譯,提升了SQL的執(zhí)行速度。
二、數(shù)據(jù)庫文件,由操作系統(tǒng)內(nèi)的各種文件組組成。
1、Oracle數(shù)據(jù)庫邏輯結(jié)構(gòu):
1).表空間,數(shù)據(jù)庫的基本邏輯結(jié)構(gòu),是一系列數(shù)據(jù)文件的集合;
2).段,不同類型數(shù)據(jù)在數(shù)據(jù)庫中占用的空間,有許多區(qū)組合而成;
3).區(qū),目的是為數(shù)據(jù)一次性預(yù)留一個較大的空間;
4).塊,最小的存儲單位,在創(chuàng)建數(shù)據(jù)庫時指定。
2、Oracle數(shù)據(jù)庫物理結(jié)構(gòu):
1).數(shù)據(jù)文件(Data File),存儲數(shù)據(jù)的文件;
2).重做日志文件(Redo Log File),負責(zé)記錄數(shù)據(jù)庫內(nèi)任何數(shù)據(jù)的處理情況,可用于數(shù)據(jù)的恢復(fù);
3).控制文件(Control File),控制和記錄數(shù)據(jù)庫的實體結(jié)構(gòu);
4).初始化參數(shù)文件(Initialization Parameter File),配置內(nèi)存空間的依據(jù);
5).口令文件(Password File),認證用戶啟動和關(guān)閉Oracle例程的權(quán)限。
更多信息請查看IT技術(shù)專欄