728x90
반응형
오류 코드: ORA-04036
오류 메시지: 인스턴스에 사용된 PGA 메모리가 PGA_AGGREGATE_LIMIT를 초과
이 글에서는 Oracle 데이터베이스에서 발생할 수 있는 ORA-04036 오류의 원인과,
이를 해결하기 위한 SGA(System Global Area)와 PGA(Program Global Area) 설정 방법에 대해 설명합니다.
1. SGA와 PGA: 메모리 분배 개념
Oracle 데이터베이스는 총 메모리(RAM)를 SGA와 PGA로 나누어 사용합니다. 각 메모리 영역의 역할은 다음과 같습니다:
SGA (System Global Area)
- 데이터베이스가 공유하는 메모리 영역
- 주요 역할:
- 읽기/쓰기 작업
- SQL 실행 계획 저장
- 데이터 블록 캐싱
PGA (Program Global Area)
- 개별 세션/프로세스가 사용하는 비공유 메모리 영역
- 주요 역할:
- 정렬 작업
- 해시 조인
- 함수 호출 시 메모리 할당
2. 권장 메모리 설정
Oracle 데이터베이스의 총 메모리가 16 GB인 경우, 권장 설정은 다음과 같습니다:
- SGA_TARGET: 8 GB (8,589,934,592 bytes)
- PGA_AGGREGATE_TARGET: 6 GB (6,442,451,944 bytes)
- PGA_AGGREGATE_LIMIT: 7 GB (7,516,192,768 bytes)
3. 현재 메모리 설정 확인 방법
현재 설정된 메모리 값을 확인하려면 아래 SQL을 사용하세요:
SELECT
name,
value / 1024 / 1024 AS size_in_mb
FROM
v$parameter
WHERE
name IN ('sga_target', 'pga_aggregate_target', 'pga_aggregate_limit');
📋 쿼리 결과 예시 (MB 단위)
매개변수 | 설정값 (MB) |
---|---|
SGA_TARGET | 11,776 MB (약 11.5 GB) |
PGA_AGGREGATE_TARGET | 1,957 MB (약 1.9 GB) |
PGA_AGGREGATE_LIMIT | 4,989 MB (약 4.9 GB) |
4. ORA-04036 오류 해결 방안
4.1 PGA_AGGREGATE_LIMIT 조정
현재 PGA_AGGREGATE_LIMIT(4,989 MB)이 설정값을 초과해 오류가 발생했으므로, 다음 명령으로 값을 증가시킵니다:
ALTER SYSTEM SET pga_aggregate_limit = 7G;
4.2 SGA와 PGA 비율 조정
SGA와 PGA의 적정 비율을 조정하여 메모리 부족 문제를 예방할 수 있습니다.
OLTP 시스템 (Online Transaction Processing)
- 실시간 거래 처리에 사용되며, 빠른 데이터 접근이 중요합니다.
- 권장 비율: SGA:PGA = 70:30
DWH 시스템 (Data Warehouse)
- 대량의 데이터를 저장하고 분석하는 시스템으로, 복잡한 쿼리 처리 성능이 중요합니다.
- 권장 비율: SGA:PGA = 50:50
4.3 작업 부하 최적화
대규모 정렬 작업과 해시 조인을 줄이기 위해 쿼리 튜닝을 진행합니다. 비효율적인 세션 종료와 리소스 사용 최적화도 고려해야 합니다.
5. 정리: 이상적인 메모리 설정 값
매개변수 | 권장값 (16GB 기준) |
---|---|
SGA_TARGET | 8,192 MB (8 GB) |
PGA_AGGREGATE_TARGET | 6,144 MB (6 GB) |
PGA_AGGREGATE_LIMIT | 7,168 MB (7 GB) |
728x90
반응형
'DB' 카테고리의 다른 글
데이터베이스 파티셔닝 전략 비교: MySQL vs PostgreSQL (0) | 2025.01.21 |
---|---|
[PostgreSQL] PostgreSQL JSONB를 활용한 복잡한 데이터 처리 (0) | 2025.01.20 |
[Oracle] Oracle Text 대량 텍스트 색인화 (feat. 상품검색기능) (7) | 2024.06.07 |
Oracle DB 관리자 필수 가이드: 기본 쿼리로 데이터베이스 리소스 정보 확인하기 (3) | 2024.05.22 |
[MYSQL 쿼리튜닝] 파티셔닝 (1) | 2024.01.06 |