Since 1982

백그라운드 프로세스 본문

Oracle

백그라운드 프로세스

안퉤 2008. 7. 26. 13:46
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
 

1.3 오라클 백그라운드 프로세스


오라클 백그라운드 프로세스는 5개의 필수 프로세스와 그 밖에 프로세스로 구성되어 있습니다.


                                                                                                                                       

** 오라클 필수 프로세스 **


- SMON (System Monitor)

- PMON (Process Monitor)

- DBWn (Database Writer)

- LGWR (Log Writer)

- CKPT (Check Point)


이들 프로세스는 오라클 데이터베이스가 시작되기 위해서는 꼭 필요 하며, 데이터 베이스가 종료되면 위의 프로세스들도 모두 종료 됩니다.


★ SMON(System Monitor)


- 시스템 모니터는 오라클 인스턴스를 관리하는 프로세스 입니다.


- 역할

  - 오라클 인스턴스 fail시 인스턴스를 복구하는 역할을 합니다.

  - 데이터 파일의 빈 공간을 연결하여 하나의 큰 빈공간으로 만듭니다.

  - 더 이상 사용하지 않는 임시 블록 세그먼트들을 재사용 할수 있게 합니다.


★ PMON(Process Monitor)


- 오라클에 서버에서 사용되는 각 프로세스들을 감시하는 프로세스 입니다.


- 역할

  - 비정상 종료된 데이터베이스의 접속을 정리 합니다.

  - 정상적으로 작동하지 않는 프로세스들을 감시하여 종료 시키며, 비정상적으로 종료된 프로세스

     들에게 할당된 SGA리소스를 재사용 가능하게 합니다.

  - 커밋되지 않은 트랜잭션을 롤백시킵니다.


★ DBWn(Database Writer)


- 버퍼 캐시에 있는 수정된(Dirty) 버퍼의 내용을 데이터 파일에 기록 합니다.


- DBWn는 데이터베이스 버퍼 캐쉬로부터 데이터 파일로 더티 버퍼(Dirty Buffer)를 옮겨 적습니다

  이렇게 함으로써 데이터베이스 버퍼 캐쉬 내에 충분한 수의 프리 버퍼(Free Buffer)가 사용 가능

  하게 됩니다.


- 최근에 사용되지 않은 데이타 블럭부터 디스크에 쓰여지는 LRU 알고리즘을 사용 합니다.


- DBWn이 발생하는 이벤트

  - 더티 버퍼 수가 임계값에 도달 했을 때

  - 프로세스가 지정된 갯수의 블록을 스캔 하고도 Free Buffer를 하나도 발견하지 못했을 때

  - 시간이 초과 했을 때 --> 3초 동안 작업이 중단 될 때(A time-out occurs)

  - CheckPoint 가 발생했을때

  - RAC ping 이 요청 되었을때

  - Tablespace가 offline이나, read only로 변경 되었을 때

  - Table을 Drop하거나 TRUNCATE 했을 때

  - Tablespace BEGIN BACKUP 명령을 실행 했을 때


★ LGWR(Log Writer)


- 데이터베이스 캐쉬에서 발생한 모든 변화를 기록하는 역할을 합니다.


- SGA의 리두 로그 버퍼에 생겨나며, 트랜잭션이 완료되었을 때 LGWR가 리두 로그 버퍼의 내용을

  온라인 리두 로그 파일에 기록 합니다.


- LGWR프로세스에 의해 리두 로그 버퍼가 디스크에 저장되는 시점

  - 데이터베이스 커밋(commit)이 수행되었을 때

  - 리두 로그 버퍼가 1/3이상 찼을 때

  - 체크 포인트에 의한 DBWn 프로세스의 작업이 요구될 때

  - 3초마다

  - LOG_CHECKPOINT_TIMEOUT 파라미터 설정 시간에 의해 TIME-OUT이 발생할 때


★ CKPT(Check Point)


- 모든 변경된 데이터베이스 버퍼를 디스크 내의 데이터 파일로 저장하는 것을 보장 합니다.


- 변화된 데이터 블록의 수, 또는 일정 시간을 두고 DBWn프로세스가 데이터베이스 버퍼(더티버퍼)

   를 데이터 파일로 저장하도록 명령하는 일을 합니다.


- 체크포인트가 발생하면 데이터 파일과 컨트롤 파일의 헤더를 갱신 합니다


- is enable by setting the parameter CHECKPOINT_PROCESS=TRUE


- 체크 포인트와 관련된 오라클 파라미터

  - LOG_CHECKPOINT_TIMEOUT : 체크포인트가 발생할 시간 간격 설정(단위 : 초)

  - LOG_CHECKPOINT_INTERVAL : 체크포인트가 발생할 리두 로그 파일의 블록수 지정


- 체크 포인트 발생시점

  - log switch change

  - log_checkpoint_interval

  - log_checkpoint_timeout

  - shutdown

  - tablespace offline


                                                                                                                                       

** 그 밖의 프로세스 **


★ ARCn(Archiver) - 아카이버


아카이버는 Online Redo Log File이 꽉차거나 DBA가 Alter system switch logfile의 명령어로 강제적으로 LOG SQITCH가 발생할 때 리두 로그 파일을 지정된 저장장치로 저장하는 역할을 합니다.


  * LOG SWITCH : 리두 로그 그룹 간의 이동


  - 아카이브 저장소는 일반적으로 다른 디스크 저장곤간 이거나 테이프 장치 입니다.

  - ARCH 는 데이터베이스의 리두 로그가 ARCHIVELOG 모드일 때만 수행됩니다.


★ RECO(Recovery) - 복구자


데이터베이스 복구시에 시작되는 프로세스 입니다.


★ LCKn(Lock) - 잠금


오라클 병렬 서버에만 적용되며, 오라클 병렬 서버에서 다수의 오라클 인스턴스 사이에서 Locking을 수행 합니다.


★ Pnnn(Parallel Query) - 병렬 질의


오라클 병렬서버에서, 병렬 질의를 제공 합니다.


★ SNPn(Snapshot Refresh)


자동으로 Snapshot Table을 갱신 할 때 사용


★ Snnn(Shared Server) - 공유 서버


Multi Threaded Server 구성에서 여러 클라이언트 요청에 응답 힙니다


★ Dnnn(Dispatcher)


다수의 사용자 프로세스가 서버프로세스를 공유하도록 하여 Multi Thread 구성을 지원합니다


★ QMNn : Advanced Queuing


★ LMON : RAC DLM Monitor.Global Locks


★ LMDn : RAC DLM Monitor.Remote Locks


★ CJQ0 : Snapshot Refrech


                                                                                                                                       

























  ================================================
    * Oracle Community OracleClub.com
    * http://www.oracleclub.com
    * http://www.oramaster.net
    * 운영자 : 김정식 (oramaster _at_ empal.com)
  ================================================
※ 강좌를 다른 홈페이지에 기재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^

'Oracle' 카테고리의 다른 글

오라클 설치중 에러 메세지  (0) 2008.10.05
오라클 설치시 경고발생  (0) 2008.10.05
백업앤리커버리 스터디중  (0) 2008.07.20
우분투에 오라클설치하기  (1) 2008.07.20
오라클 간단하게 삭제하는방법  (0) 2008.07.20