[개발] 컴퓨터 구조 및 운영체제

[SQLP] 오라클 백그라운드 프로세스란? 개념, 종류

  • -
반응형

🖥 오라클 백그라운드 프로세스 (Oracle Background Processes)

오라클 데이터베이스는 **다양한 백그라운드 프로세스**를 통해 데이터를 저장, 관리, 처리하는 강력한 시스템입니다. 백그라운드 프로세스는 **데이터베이스 성능 최적화, 자동 복구, 데이터 무결성 유지** 등의 역할을 수행하며, 오라클 DB의 안정적인 운영을 위해 필수적인 요소입니다.

 

 

 

 

 

 

 

📌 1. 오라클 백그라운드 프로세스란?

오라클 데이터베이스는 **클라이언트 요청을 처리하는 포그라운드 프로세스와 내부적으로 실행되는 백그라운드 프로세스로 구성**됩니다.

🔹 **포그라운드 프로세스** → 사용자의 SQL 실행 요청을 처리하는 프로세스

🔹 **백그라운드 프로세스** → DBMS 운영을 지원하는 필수적인 프로세스

 

 

 

 

 

 

⚙️ 2. 주요 백그라운드 프로세스

백그라운드 프로세스는 기능별로 다양한 역할을 수행하며, 대표적인 프로세스는 다음과 같습니다.

1) PMON (Process Monitor) – 프로세스 모니터

✔ **역할:** 비정상 종료된 세션을 정리하고, 할당된 리소스를 반환

✔ **기능:** 사용자 세션이 비정상 종료되면, 해당 트랜잭션을 롤백하고 잠금을 해제

 

 

 

 

 

2) SMON (System Monitor) – 시스템 모니터

✔ **역할:** 데이터베이스 복구 및 유지관리

✔ **기능:** 인스턴스 장애 발생 시 데이터베이스를 자동 복구

 

 

 

 

 

3) DBWR (Database Writer) – 데이터베이스 라이터

✔ **역할:** 변경된 데이터를 데이터 파일로 기록

✔ **기능:** 변경된 데이터 블록을 **디스크로 플러시(Flush)**하여 영구 저장

 

 

 

 

 

 

 

4) LGWR (Log Writer) – 로그 라이터

✔ **역할:** **REDO 로그**를 기록하여 트랜잭션 복구 지원

✔ **기능:** 트랜잭션이 실행될 때, REDO 로그를 디스크로 저장하여 장애 발생 시 데이터 복구 가능

 

 

 

 

 

 

5) CKPT (Checkpoint) – 체크포인트

✔ **역할:** 변경된 데이터를 데이터 파일에 반영할 시점을 결정

✔ **기능:** DBWR이 데이터를 디스크로 플러시하는 시점을 관리하여 복구 시간을 단축

 

 

 

 

 

 

6) ARCH (Archiver) – 아카이빙 프로세스

✔ **역할:** **REDO 로그를 백업하여 데이터 보호**

✔ **기능:** REDO 로그가 가득 차면, 이를 아카이브(보관)하여 장애 발생 시 데이터 복구 지원

 

 

 

 

 

 

7) MMON (Manageability Monitor) – 관리 모니터

✔ **역할:** 데이터베이스 성능을 모니터링하고 자동 통계를 수집

✔ **기능:** AWR(Automatic Workload Repository) 데이터 수집

 

 

 

 

 

 

8) RECO (Recoverer) – 분산 트랜잭션 복구

✔ **역할:** 분산 트랜잭션 장애 발생 시 복구 수행

✔ **기능:** 다른 DB와 연결된 트랜잭션이 중단될 경우 이를 자동 복구

 

 

 

 

 

 

 

📝 3. 백그라운드 프로세스 확인 방법

🖥 SQL 명령어로 확인

오라클 데이터베이스에서 현재 실행 중인 백그라운드 프로세스를 확인하려면 아래 SQL을 실행하면 됩니다.


SELECT name, description 
FROM v$bgprocess 
WHERE paddr <> '00';

 

 

 

 

🖥 리눅스/유닉스에서 확인

운영체제에서 실행 중인 프로세스를 확인하려면 다음 명령어를 사용하세요.


ps -ef | grep ora_

 

 

 

 

 

⚠️ 4. 백그라운드 프로세스 장애 시 해결 방법

오라클 백그라운드 프로세스 중 일부가 비정상 종료되면 데이터베이스 운영에 영향을 줄 수 있습니다.

  • 📌 **PMON, SMON 비정상 종료 시** – 데이터베이스 재시작 필요
  • 📌 **DBWR 장애 발생 시** – 데이터 손실 가능성 있음 → 장애 복구 수행
  • 📌 **LGWR 장애 시** – REDO 로그 손실 가능성 있음 → 아카이브 로그 백업 확인

 

 

 

 

 

📞 5. 추가 자료 및 지원

✔ **오라클 공식 문서:** Oracle Documentation ✔ **오라클 DB 포럼:** Oracle Community ✔ **SQL 튜토리얼:** Oracle SQL Tutorial

 

 

 

 

 

🎯 6. 결론

오라클 데이터베이스는 **다양한 백그라운드 프로세스를 통해 안정적인 데이터 관리**를 수행합니다. **PMON, SMON, DBWR, LGWR, CKPT** 등 필수 프로세스를 이해하면 **오라클 DB 성능 최적화 및 장애 복구**에 큰 도움이 됩니다. 🚀

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.