자바바라
2025. 1. 16. 23:26
Oracle 데이터베이스에서 운영 체제 수준의 프로세스 정보를 제공하는 뷰. 이를 통해 Oracle 인스턴스와 연결된 서버 프로세스, 백그라운드 프로세스, CPU 및 메모리 사용량 등을 확인할 수 있다.
주요 열 설명
- PID: Oracle 내부 프로세스 ID
- SPID: 운영 체제 수준의 프로세스 ID
- PGA_USED_MEM: 해당 프로세스의 PGA(Program Global Area) 메모리 사용량
- USERNAME: 프로세스를 실행 중인 사용자 이름 (운영 체제 사용자)
- PROGRAM: 프로세스 실행 중인 프로그램 이름
- TERMINAL: 프로세스가 실행된 터미널 이름
- BACKGROUND: 백그라운드 프로세스 여부 (YES/NO)
기본 사용 예제
- 모든 프로세스 확인
SELECT PID, SPID, PROGRAM, BACKGROUND, PGA_USED_MEM
FROM V$PROCESS;
결과 예시:
PID |
SPID |
PROGRAM |
BACKGROUND |
PGA_USED_MEM |
1 |
12345 |
ora_pmon_orcl |
YES |
204800 |
2 |
12346 |
ora_smon_orcl |
YES |
409600 |
10 |
54321 |
sqlplus@myserver |
NO |
512000 |
- 백그라운드 프로세스만 조회
SELECT PID, SPID, PROGRAM, PGA_USED_MEM
FROM V$PROCESS
WHERE BACKGROUND = 'YES';
결과 예시:
PID |
SPID |
PROGRAM |
PGA_USED_MEM |
1 |
12345 |
ora_pmon_orcl |
204800 |
2 |
12346 |
ora_smon_orcl |
409600 |
- 특정 운영 체제 프로세스 ID로 조회 운영 체제에서 확인한 PID가 54321인 프로세스에 대한 정보를 확인:
SELECT PID, SPID, PROGRAM, PGA_USED_MEM
FROM V$PROCESS
WHERE SPID = '54321';
결과 예시:
PID |
SPID |
PROGRAM |
PGA_USED_MEM |
10 |
54321 |
sqlplus@myserver |
512000 |
- 메모리 사용량이 높은 프로세스 확인
SELECT PID, SPID, PROGRAM, PGA_USED_MEM
FROM V$PROCESS
ORDER BY PGA_USED_MEM DESC
FETCH FIRST 5 ROWS ONLY;
결과 예시:
PID |
SPID |
PROGRAM |
PGA_USED_MEM |
10 |
54321 |
sqlplus@myserver |
512000 |
2 |
12346 |
ora_smon_orcl |
409600 |
1 |
12345 |
ora_pmon_orcl |
204800 |
활용 방안
- 프로세스 모니터링: Oracle 인스턴스와 관련된 모든 프로세스를 확인하여 이상 프로세스를 감지.
- 백그라운드 프로세스 확인: 중요한 백그라운드 프로세스(PMON, SMON, DBWn 등)의 상태를 확인.
- 운영 체제와 매핑: 특정 프로세스가 운영 체제와 어떻게 연결되어 있는지 분석.
- 리소스 사용량 최적화: 높은 메모리를 사용하는 프로세스를 분석하여 리소스 관리에 활용.