oracle體系結構一覽圖
oracle主要分兩部分,上半部分是instance-實例;下半部分是database。
instance主要部分是SGA進程塊
database主要是文件組成的,包含一些數據。
用戶的進程連接數據庫,一般是連接到instance
oracle server-服務器:一個數據庫管理系統,管理信息。包含instance和database
oracle instance-實例:訪問database的一個手段,一個instance對應并只能對應一個database;一個database可以有多個instance訪問。
組成部分:memory-內存塊;background process-后臺進程
connection&session-連接和會話:
一個connection是指一個oracle的客戶端和服務器進程建立的一個tcp連接
process有三種類型:background process-后臺進程(指專注于數據庫核心的進程);server process-服務器進程(處理客戶端和服務器連接的進程);user rocess-客戶端進程
session:connection建立tcp連接,oracle對客戶端進行身份驗證,通過后,server process才允許使用數據庫,此時,就開始了一個會話-session。連接斷開時,會話消失。
oracle database-數據庫:存儲數據,表現形式是存儲在磁盤里的一堆文件。包含三種文件類型:
data files-數據文件:以dbf結尾,存儲數據;
control files-控制文件:以ctl結尾,操作數據文件,提供控制信息;
redo log files-操作日志文件:以log結尾,重做日志,記錄數據庫的改變。記錄修改前/后的文件,用于恢復數據文件。操作失敗時,回滾數據的依據。
其他類型:
parameter files-參數文件:規定oracle的基本參數和初始參數的值
archived log files-歸檔日志:與redo log files相輔相成。歸檔redo log的
password file:存儲數據庫操作口令
啟動成功后,shell目錄下輸入ps -ef ?| ?more,查看后臺進程
instance-memory structure包含兩塊:SGA(System Global Area-系統全局區),PGA(Program Global Area-程序全局區)
SGA:一個instance只有一個,在instance啟動時分配,是基本組成部分
PGA:在server process啟動時分配,一個server process有一個PGA
oracle存儲海量數據,為了提高訪問效率,必然會開一個很大的內存區。內存主要消耗在SGA上
shell下輸入ipcs,查看ipc(進程間通訊的機制)資源狀態