Oracle進程結構簡介
Oracle進程結構對于很多剛剛接觸Oracle數據庫的新人來說還是比較陌生的概念,下面就為你詳細介紹Oracle進程結構方面的知識,供您參考。
進程是操作系統中的一種機制,它可執行一系列的操作步。在有些操作系統中使用作業(JOB)或任務(TASK)的術語。一個進程通常有它自己的專用存儲區。ORACLE進程的體系結構設計使性能***。
ORACLE實例有兩種類型:單進程實例和多進程實例。
單進程ORACLE(又稱單用ORACLE)是一種數據庫系統,一個進程執行全部ORACLE代碼。由于ORACLE部分和客戶應用程序不能分別以進程執行,所以ORACLE的代碼和用戶的數據庫應用是單個進程執行。
在單進程環境下的ORACLE 實例,僅允許一個用戶可存取。例如在MS-DOS上運行ORACLE 。
多進程ORACLE實例(又稱多用戶ORACLE)使用多個進程來執行ORACLE的不同部分 ,對于每一個連接的用戶都有一個進程。
在多進程系統中,進程分為兩類:用戶進程和ORACLE進程。當一用戶運行一應用程序,如PRO*C程序或一個ORACLE工具(如SQL*PLUS),為用戶運行的應用建立一個用戶進程。ORACLE進程又分為兩類:服務器進程和后臺進程。服務器進程用于處理連接到該實例的用戶進程的請求。當應用和ORACELE是在同一臺機器上運行,而不再通過網絡,一般將用戶進程和它相應的服務器進程組合成單個的進程,可降低系統開銷。然而,當應用和ORACLE運行在不同的機器上時,用戶進程經過一個分離服務器進程與ORACLE通信。它可執行下列任務:
對應用所發出的SQL語句進行語法分析和執行。
從磁盤(數據文件)中讀入必要的數據塊到SGA的共享數據庫緩沖區(該塊不在緩沖區時)。
將結果返回給應用程序處理。
系統為了使性能***和協調多個用戶,在多進程系統中使用一些附加進程,稱為后臺進程。在許多操作系統中,后臺進程是在實例啟動時自動地建立。一個ORACLE實例可以有許多后臺進程,但它們不是一直存在。
【編輯推薦】