天天看點

Oracle 結構概況

Oracle 結構概況

Oracle Server由兩個實體組成:執行個體(instance)與資料庫(database)。

1、執行個體:執行個體是資料庫啟動時初始化的一組程序和記憶體結構

2、資料庫:資料庫則指的是使用者存儲資料的一些實體檔案

這兩個實體是獨立的,不過連接配接在一起。在資料庫建立過程中,執行個體首先被建立,然後才建立資料庫。在典型的單執行個體環境中,執行個體與資料庫的關系是一對一的,一個執行個體連接配接一個資料庫,執行個體與資料庫也可以是多對一的關系,即不同計算機上的多個執行個體打開共享磁盤系統上的一個公用資料庫。這種多對一關系被稱為實際應用群集(Real Application Clusters,RAC)RAC極大提高了資料庫的性能、容錯與可伸縮性(可能耗費更多的存儲空間)并且是oracle網格(grid)概念的必備部分。

Oracle 結構概況

1、使用者和使用者程序互動

  使用者程序可以是一般的用戶端軟體,像Oracle的sqlplus,sql developer,或者是一些驅動程式等等都屬于使用者程序。

2、使用者程序和伺服器程序互動

  伺服器程序有時會稱為前台程序,當然是相對于背景程序(後面會提到的資料庫寫入器,日志寫入器等)來說的,伺服器程序的主要作用就是處理連接配接到目前執行個體的使用者程序的請求,對用戶端發來的sql進行執行并傳回執行結果。在專有伺服器結構中,使用者程序和伺服器程序是一對一的,也就是說,當監聽程式監聽到用戶端來了一個請求,會為其配置設定一個對應的伺服器程序。還有一種結構為共享伺服器,這種結構就不是一個使用者程序對應一個伺服器程序了,會通過排程程式進行協調處理,關于共享伺服器連接配接,本文就不在贅述了。

3、伺服器程序和執行個體程序互動

4、執行個體和資料庫程序互動

  上面描述了一些我們在進行資料庫連接配接操作的時候,大緻的互動流程是什麼樣的。下面,我們就來看看Oracle 的執行個體記憶體結構