1. 程式人生 > >關於oracle使用者程序,服務程序,後臺程序

關於oracle使用者程序,服務程序,後臺程序

一個Oracle系統的程序可以分為兩個主要的組:
1.使用者程序執行應用程式或者Oracle工具程式碼
2.Oracle程序執行Oracle資料庫服務程式碼。它們包括伺服器程序和後臺程序。
程序結構針對不同的Oracle配置、不同的作業系統和Oracle附件的選擇都會有所不同。連線使用者的程式碼可以配置為共享伺服器或者專用伺服器。
在專用伺服器情況下,對每個使用者來說,資料庫應用程式執行的程序(使用者程序)和Oracle資料庫伺服器程式碼執行的程序(專用伺服器程序)不同。
在共享伺服器下,資料庫應用程式執行在和Oracle資料庫程式碼不同的程序上(使用者程序)。每個執行Oracle伺服器程式碼的伺服器程序(共享伺服器程序)可以對多個使用者程序服務。

伺服器程序
Oracle建立伺服器程序來處理連線到這個例項的使用者程序的請求。在應用程式和Oracle執行在一臺機器的情況下,可以將使用者程序和對應的伺服器程序合併來降低系統開銷。但是,當應用程式和Oracle在不同的計算機上執行時,使用者程序總是通過不同的伺服器程序連線Oracle。
為每個使用者應用程式建立的伺服器程序(或者合併的使用者/伺服器程序的伺服器部分)可以執行下列任務:
1,解析和執行應用程式釋出的SQL語句
2,如果SGA中不存在一些資料塊的資料,伺服器程序會從磁碟上的資料檔案讀取必要的資料塊到SGA的共享伺服器快取中。
3,以應用程式可以處理的資訊方式返回結果。
後臺程序
為獲得最高的效能和適應多使用者,一個多程序Oracle系統使用一些叫做後臺程序的額外Oracle程序。
一個Oracle例項可以有很多後臺程序;但不是所有的都必須存在。後臺程序數量很多。檢視檢視V$BGPROCESS可以得到關於後臺程序的資訊。一個Oracle例項中的後臺程序可以包含下列程序:
1,資料庫寫入程序(Database Writer Process,DBWn)
2,日誌寫入程序(Log Writer Process,LGWR)
3,檢查點程序(Checkpoint  Process,CKPT)
4,系統監視程序(System Monitor Process,SMON)
5,程序監視程序(Process Monitor Process,PMON)
6,恢復程序(Recoverer Process,RECO)
7,任務佇列程序(Job Queue Processes)
8,歸檔程序(ARCn)
9,佇列監控程序(Queue Monitor Processes,QMNn)
10,其他後臺程序
在許多作業系統上,後臺程序在例項啟動時自動建立。