본문 바로가기

IT관련

멀티테넌트 DB(CDB) 내의 PDB 에서 변경할 수 있는 DB 초기화 파라메타

Oracle Multi-Tenant DB 에서 CDB 내에 있는 PDB 들의 시스템 자원 사용량을 제한하기 위해서 지정가능한 DB 파라메타들은 다음과 같은 것들이 있습니다.

 

 

<< CPU 관련 PDB레벨에서 지정가능한 DB 파라메타들 >>

 

* CPU_COUNT

* CPU_MIN_COUNT

 

PDB 들의 CPU 사용량(최대 CPU Thread 갯수)을 제한합니다. Core당 2 Thread 인 8 Core CPU 장비라면 총 사용가능한 CPU Thread 는 16 입니다. 만약 특정 PDB에서 CPU_COUNT 를 4 로 지정했다면 4 Thread 이상은 사용하지 못하게 제한을 거는 겁니다.

 

 

<< Memory 관련 PDB 레벨에서 지정가능한 DB 파라메타들 >>

 

* DB_CACHE_SIZE

* SHARED_POOL_SIZE

* SGA_MIN_SIZE

* SGA_TARGET

* PGA_AGGREGATE_LIMIT

* PGA_AGGREGATE_TARGET

 

PDB에서 사용할 SGA, PGA 영역을 제한하거나 Buffer Cache (DB_CACHE_SIZE) 를 제한할 수 있습니다.

 

일반적으로 모든 PDB레벨에서 지정할 수 있는 최대값들은 CDB레벨에서 지정한 값보다 작아야 합니다.

일부 메모리관련 파라메타의 경우는 이보다 훨씬 더 작습니다. DB_CACHE_SIZE, SHARED_POOL_SIZE 의 경우는 전체 PDB들에서 지정한 메모리 파라메타들의 합이 CDB 레벨에서 지정한 값의 50% 를 넘을 수 없습니다.

값을 50% 이상 너무 크게 지정하면 ORA-02097, ORA-56748 에러가 발생합니다.

 

SGA_TARGET 을 PDB레벨에서 지정하려면, CDB 레벨에서 SGA_TARGET 값을 사용해야 합니다.

 

 

<< Session 관련 PDB 레벨에서 지정가능한 DB 파라메타들 >>

 

* SESSIONS

* MAX_IDLE_TIME

* MAX_IDLE_BLOCKER_TIME

 

PDB레벨에서 연결할 수 있는 최대세션수를 지정하거나, Idle 한 세션이 연결이 끊어지는 시간을 지정합니다.

 

 

<< Disk I/O 관련 PDB 레벨에서 지정가능한 DB 파라메타들 >>

 

* MAX_IOPS

* MAX_MBPS

 

초당 Disk I/O 최대양을 지정합니다. MAX_IOPS 는 초당 가능한 최대 Disk I/O 횟수를 지정하고, MAX_MBPS 는 초당 최대 Disk I/O 양(Mega Bytes)을 지정합니다.

 

 

위 DB 파라메타들은 19c DBMS 기준입니다. 12c 에서는 CPU_COUNT 나 SESSIONS 와 같은 파라메타들이 대상에 없었는데 추가되었습니다. 상위 DBMS 로 버전이 올라갈 수록 PDB 레벨에서 수정가능한 파라메타들이 점점 늘어날 것으로 예상됩니다. 정확한 것은 각 버전별 Database Administrators Guide 또는 Multitenant Administrators Guide 를 참조하시기 바랍니다.

 

 

참고) 멀티테넌트 DB(CDB) 내의 PDB 들간의 시스템 자원(CPU, Memory, Disk IO) 경합