天天看點

我的oracle 9i學習日志(3)--程序結構

oracle程序分三種:User process,Server process,Background processes。

user process和server process在“我的oracle學習日志(1)”中介紹過,在此不再贅述。容易迷惑的地方可能就是connection和session的差別,請看下圖:

<a target="_blank" href="http://blog.51cto.com/attachment/201002/134350627.png"></a>

Background Processes

有5個必須啟動的程序和若幹個可選程序。必須啟動的程序:DBWn,PMON ,CKPT,LGWR和SMON。可選程序:

      ARCn: Archiver

      CJQ0: Coordinator Job Queue background process

      Dnnn: Dispatcher

      LCKn: RAC Lock Manager-instance Locks

      LMDn: RAC DLM Monitor-remote Locks

      LMON: RAC DLM Monitor-global Locks

      LMS: RAC Global Cache Service

      Pnnn: Parallel Query Slaves

      QMNn: Advanced Queuing

      RECO: Recoverer

      Snnn: Shared Server

DBWn(Database Writer):

功能如圖所示:

<a target="_blank" href="http://blog.51cto.com/attachment/201002/134434319.png"></a>

 n表示可以有多個,如DBW0,DBW1… …,oracle9i可以支援20個DBW,通常隻啟動一個。

LGWR(Log Writer)

功能如圖:

<a target="_blank" href="http://blog.51cto.com/attachment/201002/134503640.png"></a>

SMON (System Monitor)

主要功能是恢複資料庫的instance,當instance發生錯誤而停止時,在下次啟動instance後負責将資料庫復原到錯誤發生前的狀态。另外還有整理記憶體碎片和回收記憶體的功能。

 PMON(Process Monitor)

負責監視程序(包括PGA和SGA内的所有程序 )的狀态,若發現有程序出現錯誤或僵死則結束異常程序然後重新生成新的程序。

 CKPT(Checkpoint)

主要功能是輔助DBW和LGWR,如圖:

<a target="_blank" href="http://blog.51cto.com/attachment/201002/134535436.png"></a>

ARCn (Archiver)

這是一個可選程序,但在實際應用中幾乎是必選的。功能如下圖所示:

<a target="_blank" href="http://blog.51cto.com/attachment/201002/134557798.png"></a>

n表示可以有多個這樣的程序。

本文轉自 d185740815 51CTO部落格,原文連結:http://blog.51cto.com/luotaoyang/277314,如需轉載請自行聯系原作者