Oracle CDB,PDB란?

sua-tech
|2024. 2. 9. 09:18

Oracle 12c부터 멀티테넌트(Multi-tenant) 기능 도입됨

다중세입자란 뜻으로 하나의 DB에 여러개의 DB가 포함된다는 의미

 

11g 까지는 하나의 instance에 하나의 DB였다 (non-CDB)

 

CDB- Contaioner DB 

  - 말 그래도 컨테이너 역할을 하는 DB

  - pdb에 필요한 메타정보 저장

PDB - Pluggable DB

  - 넣었다 뺐다 할 수 있는 DB

 

이점은 무엇인가?:

싱글DB는

 - 보통 서버(장비) 하나씩 사용 

 - 여유있게 서버스펙을 잡고 자원의 실사용량은 50%내로 사용함

 - 즉, 노는 자원이 많음

multi-tenant는

 - 콘솔리데이션(Consolidation) 효과 

   - 자원을 공유하면서, 유휴자원을 줄인다

 - 관리 포인트 감소

   - 시스템상으로 하나의 DB이기에, 패치나 백업등 작업은 한번만 해주면됨

 - 복제가 용이 

 

 

 

** cloud시각으로 보면 , Public 이 아닌 Private Cloud형태로 DB구축한거라 보면됨

 

 

 

 

CDB - MYCDB

PDB - hrpdb, salespdb

 

시스템 밖에서 보면 MYCDB 라는 DB 1개로만 보임

반면, DB사용자 입장에선 hrpdb, salespdb 2개 각각 존재하는 것으로 보임

두개의 DB는 다른 DB 이기에 각 DB간의 select및 DML작업이 안됨

 

* CDB안에 oracle,mysql,db2 등 타 DB는 연결할수 없고 only oracle DB만 연결가능

* oracle Could 에서 DB 만들면 무조건cdb,pdb로 된다고 함

 

근데, 실제 업무에선 잘안쓴다고함~

cloud로 바꾸는 추세니 cdb,pdb도 익숙해지면 좋을까? 싶음