dbms:oracle:concept:oracleprocesses
문서의 이전 판입니다!
목차
Oracle Process
User Process
- 사용자가 오라클 어플리케이션 프로그램을 실행시켰을때 사용되는 프로세스이다.
- 사용자가 오라클서버에 접속할때마다 사용자 프로세스가 생성된다.
- 사용자가 실행시킨 SQL문을 서버 프로세스에 전달하고, 그 결과를 서버 프로세스로부터 받는 역할을 수행한다.
Server Process
Shared Server vs Dedicated Server
Dedicated Server Processes
- Oracle에 접속된 모든 User Process는 상응하는 Dedicated Server Process를 가지므로
User Process와 Server Process는 1:1의 비율로 존재한다.
Shared Server Processes
- 다수의 User Process가 매우 적은 수의 Server Process를 공유하는 것을 허용하는 방법이다.
- 다수의 User Process가 Dispatcher Process에 접속을 하고, Dispatcher는 Client 요구를 사용 가능한 공유 Server Process에 돌아가면서 진입한다.
- Shared Server Processes는 Dedicated Server Processes를 동시에 설정 가능하다.
- Shared Server 설정의 장점은 System Overhead(memory와 process수)가 감소되어 지원 가능한 User 수가 증가되는 효과를 가져온다.
Background Process
DBWn
- Database Writer Process(DBWn)
- Database Buffer Cache의 내용을 데이터 파일에 저장하는 작업을 수행한다.
LGWR
- Log Writer Process(LGWR)
- Redo Log Buffer의 내용을 Disk의 Redo Log File에 Write하는 역할을 담당한다.
CKPT
- Checkpoint Process(CKPT)
- 데이터파일 헤더와 컨트롤파일 정보 갱신 및 Database Buffer Cache와 Redo Log Buffer의 내용이 파일에 저장되는 것을 보장한다.
SMON
- System Monitor Process(SMON)
- System Monitor Process는 Oracle Instance를 관리하는 프로세스이다.
- Oracle Instance Fail시 Instance를 복구하는 역할을 한다.
- 데이터파일의 빈 공간을 연결하여 하나의 큰 빈 공간으로 만든다.
- 더 이상 사용하지 않는 Temporary Segment들을 재사용 할 수 있게 합니다.
PMON
- Process Monitor Process(PMON)
- 오라클에 서버에서 사용되는 각 프로세스들을 감시하는 프로세스이다.
RECO
- Recoverer Process(RECO)
- Recoverer Process는 분산 데이터베이스에서 네트워크 또는 시스템 장애로 실패한 분산 트랜잭션 오류를 자동으로 처리합니다.
- Local Recoverer Processes는 정해진 시간마다 리모트 데이터베이스에 연결을 시도해 보고, 자동으로 로컬내의 미결정된 트랜잭션을 Commit 또는 Rollback 시킨다.
Jnnn
- Job Queue Process(Jnnn)
- Jnnn(J000…J999) process는 DBMS_JOBS 패키지에 의해 만들어지는 Job Request를 수행합니다.
CJQn
- Coordinator Job Queue Process(CJQn)
- CJQn 는 JOB$ Table을 모니터하여 처리해야 할 작업을 찾으면 자동적으로 Job Queue Process(Jnnn)를 시작합니다.
- JOB_QUEUE_PROCESSES 파라메터 값이 0이면 CJQn 프로세스는 활동하지 않는다.
ARCn
- Archiver Process(ARCn)
- ARCn 프로세스는 Redo Log File에 기록된 내용이 꽉차 로그파일이 스위치되면서 Redo Log File을 아카이브 저장소로 복사합니다.
Dnnn
- Dispatcher Process(Dnnn)
- Shared Server 환경에서 사용되는 Dispatcher Process로 서버 프로세스와 여러 개의 사용자 프로세스 사이에서
사용자의 요구를 서버에 전달하고 서버의 응답을 사용자에게 전달하는 역할을 한다.
QMNn
- Queue Monitor Process(QMNn)
- Oracle Advanced Queuing(Oracle AQ)에 대한 메시지 대기열을 모니터하는 선택적 백그라운드 프로세스입니다.
- 최대 10개의 대기열 모니터 프로세스를 구성할 수 있습니다.
MMAN
- Memory Manager Process(MMAN)
- 자동화된 공유 메모리 관리(ASMM)를 위해 Memory Manager(MMNAM)라는 새로운 백그라운드 프로세스가 도입되었다.
- MMAN Backgroud Process가 5분마다 주기적으로 수집한 작업부하(Workload) 정보를 바탕으로 SGA가 동적으로 구성이 되고, 가장 필요한 곳에 동적으로 할당된다.
- 자동화된 공유 메모리 관리를 사용하기 위해서는 SGA_TARGET 파라메터 값을 0이 아닌 값으로 설정해야 합니다.
RVWR
- Recovery Writer Process(RVWR)
- Oracle 10g부터는 Flashback Database 기능을 위해 Recovery Writer Process(RVWR)라는 새로운 백그라운드 프로세스가 도입되었습니다.
- 이는 데이터 블록의 PreImage를 저장해서 Flashback Log를 기록하는 역할을 수행한다.
CTWR
- Change Tracking Writer Process(CTWR)
- Oracle 10g의 새로운 기능인 fast RMAN incremental backup을 위해 변경된 Tracking Feature를 위한 새로운 블록을 관장하는 프로세스이다.
MMNL
- Memory Monitor Light Process(MMNL)
- Oracle 10g에 새로 추가된 프로세스이다.
- new feature인 Automatic Workload Repository(AWR) 기능을 위해 statistics buffer 전체를 필요시 디스크에 기록하는 역할을 한다.
MMON
- Memory Monitor Process(MMON)
- Oracle 10g에 새로 추가된 프로세스이다.
- New feature인 Automatic Workload Repository와 연관되어 새로 추가된 프로세스이다.
- AWR는 자동화된 문제진단 및 self tuning 작업을 수행한다.
- MMON은 AWR에 필요한 통계정보를 스케줄에 따라 기록한다.
dbms/oracle/concept/oracleprocesses.1203910723.txt.gz · 마지막으로 수정됨: 저자 joang77


