DB

[SQL] 11. Data Dictionary(데이터 딕셔너리)

NOHCODING 2021. 11. 23. 14:20
반응형

 

 

0) Data Dictionary(데이터 딕셔너리)란?

   오라클은 데이터베이스를 운영하기 위한 정보들을 모두 특정한 테이블에 관리, 그 테이블을 '데이터 딕셔너리'라 한다. 이 정보들은 사람으로 비유하면 두뇌에 해당하는 정보들이기에 잘못 관리될 경우 오라클 데이터베이스를 사용할 수 없고 더 심할 경우 장애 시 아예 복구조차 할 수 없게 될 수 있음.

 

  따라서 오라클은 딕셔너리를 Base Table과 Data Dictionary View로 나눈다. 만약 데이터 베이스에 변경사항이 생겨 딕셔너리 내용을 변경할 경우, 사용자가 직접 수동으로 변경하지 못하고 DDL 문장을 수행하는 순간 SERVER Process가 사용자를 대신해서 해당 딕셔너리 내용을 변경해줌

 

   (0) 딕셔너리 저장 정보 

더보기

① 오라클 데이터베이스의 메모리구조와 파일에 대한 구조 정보

② 각 오브젝트들이 사용하고 있는 공간의 정보 

③ 제약 조건 정보

④ 사용자에 대한 정보

⑤ 권한이나 프로파일, 롤에 대한 정보 

⑥ 감사에 대한 정보

 

   (1) Base Table 

      ① DBA도 접근 불가 

      ② Database를 생성하는 시점에 자동으로 만들어짐

 

    (2) Data Dictionary View

       ① 사용자, DBA가 딕셔너리를 SELECT 할 수 있게 허용 

       ② Catalog sql 이란 파일이 수행되어야만 만들어짐. 

       ③ Catalog sql : DBCA로 Database를 생성할 때 는 자동으로 수행

       ④ CREATE DATABASE 명령어를 수동으로 Database를 생성할 때는 DBA가 수동으로 생성 해야함

       ⑤ Static Dictionary :담고 있는 내용들이 자동으로 변경되지 않고 수동으로 변경작업을 해야함.

          * USER-XXX : 해당 사용자가 생성한 오브젝트들만 조회할 수 있음

          * ALL_XXX :  해당 사용자가 생성한 오브젝트를 포함하여 해당 사용자가 접근 가능한 모든 오브젝트 조회

          * DBA_XXX :  데이터베이스 내의 모든 오브젝트를 다 볼 수 있지만 DBA 권한을 가진 사람만이 조회 가능

       ⑥ Dynamic Dictionary(V$_XXX) : 정보를 실시간으로 조회하며, 사용자가 Dynamic Dictionary View에 조회를 하게 되면 오라클은 해당 정보를 Contrl file이나 메모리에 조회하여 보여줌

 

 

반응형