天天看點

oracle資料庫服務的工作過程與原理

1.使用者在計算機上運作基于oracle的應用程式,即啟動使用者程序。

2.在客戶機、伺服器之間建立建立連接配接(connect)。

3.在建立連接配接的基礎上為使用者建立會話(session),并為該回話建立一個pga區,存儲與該回話相關的資訊,在同一個連接配接中不同的使用者有不同的會話。(一個連接配接可以對應多個會話)

4.伺服器啟動伺服器程序,由該伺服器程序負責執行會話的各項任務。

5.使用者程序發送sql語句(如select、update、commit)等。

6.伺服器程序解析、編譯、執行sql語句,并将結果寫入資料緩存區同時傳回給使用者程序。

7.使用者程序接收傳回的sql執行結果。

8.在應用程式中顯示sql語句執行結果。

從作用和工作原理上看,可以将oracle總體結構分成三個部分:

1.記憶體結構:包括sga、pga。使用記憶體最多的是sga,同時也是影響資料庫性能的最大參數。

系統全局區又稱sga (system global area)是oracle instance的 基本組成部分,在執行個體啟動時配置設定。是一組包含一個oracle執行個體的資料和控制資訊的共享記憶體結構。主要是用于存儲資料庫資訊的記憶體區,該資訊為資料庫進 程所共享(pga不能共享的)。它包含oracle 伺服器的資料和控制資訊,它是在oracle伺服器所駐留的計算機的實際記憶體中得以配置設定,如果實際記憶體不夠再往虛拟記憶體中寫。

oracle為每個使用者程序建立一個pga(program global area,程式全局區),用于存儲與該使用者程序相關的資訊(如綁定變量、會話變量等)。

2.程序結構:包括前台程序,背景程序。前台程序是指服務程序,使用者程序。前台程序是根據實際需要運作的,并在需要結束是立即結束。背景程序是指在oracle資料庫啟動後自動啟動的幾個作業系統程序。

3.存儲結構:包括控制檔案、資料檔案、日志檔案等作業系統檔案。

oracle資料庫例程由sga(system global area)和背景程序組成。