메뉴 건너뛰기

Korea Oracle User Group

Admin

Pga 메모리 설정관련 내용

우뽕 2021.03.05 15:38 조회 수 : 1787 추천:1

PGA_AGGREGATE_TARGET 설정기준을 정의 해 보려고 합니다.

버전이 올라가면서 위의 파라미터 말고 다른 값이 존재 합니다.

PGA_AGGREGATE_LIMT  설정값이 존재 합니다.


계산은 단순 합니다.

PGA_AGGREGATE_TARGET  * 3 = PGA_AGGREGATE_LIMT
최소 값 입니다.
-->   PGA_AGGREGATE_LIMT 설정값이 최신 버전에서는 * 3 으로 계산이 아니 됩니다.  * 2로 변경 되며  PGA_AGGREGATE_LIMT 설정값을따로 잡지 않아도 되는것으로 확인 되었습니다. 즉 PGA_AGGREGATE_LIMT 값만 설정 해 주시면 PGA_AGGREGATE_LIMT 계산을 하면서 올라 오지만 미리 PGA_AGGREGATE_LIMT reset 처리를 먼저 수행 되어야 합니다.   ( 23년 3월 기준으로 확인 완료)


그럼 PGA_AGGREGATE_TARGET 계산은 어떻게 할까요 ?

아래와 같이 계산식으로 산출 하시면 됩니다.

한개의 프로세스수 * 5120000 byte 입니다.

즉 DB 설치시 PROCESSES 수를 지정 하게 됩니다.


예로 ))

프로세스 수 : 30000

PGA_AGGREGATE_TARGET  = 505Mb
  == (5120000*3000)/1024/1024   = (1,464.84 byte *1024*1024)/2.9 = 529,653,816.4
    529,653,816.4/1024/1024 = 505.1172413793103
소수점 버림 하면 505MB 정도 나옵니다. 
 
여기 위에서 왜 2.9를 나누게 된 배경은  수많은 테스트에서 나온 결과 입니다. ( 엑셀을 이용해서 계산을 해 보고 나온 값으로 설명 불가. )
PGA_AGGREGATE_TARGET 값은 505mb 이상 잡으시면 됩니다.
단 PGA_AGGREGATE_LIMT = 1515Mb 설정값의 계산식은 반드시 PGA_AGGREGATE_TARGET * 3배를 잊지 마셔야 합니다.

PGA_AGGREGATE_LIMT 설정값이 부족 하면 ora-00093, ora-01078 로 인해 db 구동이 불가능 합니다.

반드시 spfile은 백업을 해 놓은 상태에서 수행 하시길 바랍니다.
 
중요한것은 위의 처럼 안 하셔도 됩니다. PGA_AGGREGATE_TARGET 임의 적으로 잡으신 후 PGA_AGGREGATE_LIMIT 설정시
PGA_AGGREGATE_TARGET * 3 으로 계산하여 넣으셔 됩니다. 
Oracle 버전이 올라 가면서 하나의 프로세스가 예전에는 3M 였으나 현재 버전까지 5M 로 계산 해 보시는 것이 좋을듯 하여 올려 봅니다 
 

테스트 장비  : 19c  기준으로 작성 
Exadata 도 가능 

 

번호 제목 글쓴이 날짜 조회 수
34 Windows 접속 에러 ORA-12638 [1] file Talros 2024.02.14 99
33 Result Cache(oracle11g NF) [6] ocm10gr2 2016.03.14 264
32 수집된 통계가 바로 반영되지 않고 원할 때 반영하도록 하는 방식 명품관 2023.04.04 269
31 mbr(multi block read) 과 sbr(single block read) 사이에 과연 어떤 방식을 선택해야 할까요? [1] 명품관 2022.09.16 342
30 ORA-28014: Cannot Drop Administrative Users 에러 현상 [1] 명품관 2023.03.27 414
29 default 값을 포함한 컬럼 추가시 오라클 버전별 개선 사항 [1] 명품관 2023.01.17 535
28 Python 을 이용해 파일 업로드 해 보기 [1] file Talros 2023.04.19 577
27 SQL Plan Management(SPM) - 2 DBMS_SPM.CONFIG로 필터링 file 명품관 2020.03.26 590
26 SQL Plan Management(SPM) - 3 Manual Plan Capture 명품관 2020.06.01 650
25 ORA-3136 inbound connection time out & JDBC Io exception: Connection reset [1] Talros 2023.02.24 691
24 OS 터미널 접속 없이 오라클 접속을 통해 OS CPU 사용율 모니터링 하기 [3] file 명품관 2020.12.22 813
23 Oracle VMSTAT을 이용한 CPU 사용량 활용법 에밀리오 2016.07.14 891
22 DB에 생성된 ROLE의 생성 정보 확인 [2] 명품관 2016.05.31 914
21 External Table 기능을 사용해 파일 읽기 명품관 2017.04.05 962
20 SQL Plan Management(SPM) - 1 파라미터의 기능 확인 명품관 2020.03.19 987
19 RECO 프로세스 트레이스 발생 하면서 ORA-02019 에러 발생시 명품관 2021.01.12 998
18 Active Session History를 이용한 TOP SQL 분석 (GV$ACTIVE_SESSION_HISTORY) 에밀리오 2016.07.12 1195
17 DB option Enable / Disable 정리 방법 - Mos 참고 file 우뽕 2021.01.31 1211
16 Schema password 재 사용 불가능 하게 하기 [1] Talros 2022.01.26 1289
15 Block Cleanout(블럭 클린아웃) 명품관 2016.09.23 1489
위로