# 논리적 구성요소
- 데이터 블록(data block)
- 익스텐트(extent)
- 세그먼트(segment)
- 테이블스페이스(tablespace)
# 물리적 구성요소
- 데이터파일
- 컨트롤 파일
- redo 로그 파일
- 설정 파일
- alert/trace 로그 파일
- 백업파일
<논리적 구성요소>
1) 데이터 블록(data block)
- 데이터가 저장되는 가장 작은 단위
- 저장해야 할 데이터가 늘어나면 데이터 블록의 배수로 저장 공간을 확보하여 저장한다.
- 데이터 블록 크기는 db_block_size라는 설정 값에 저장됨.
- 블록 크기 확인 명령
SQL > show parameter db_block_size
# 블록 크기를 확인하는 다른 방법
- 설정 정보는 특정 테이블에 저장되는데 그 테이블 이름이 v$parameter이다. 여기서 확인이 가능하다.
SQL > desc v$parameter
SQL > select name, value from v$parameter where name ='db_block_size';
2) 익스텐트(extent)
- 데이터 블록 다음 단계의 논리적 데이터 저장 공간
- 연속적인 여러 개의 데이터 블록이 모여서 하나의 익스텐트를 구성함.
- 익스텐트가 모여 "세그먼트"를 구성함.
3) 세그먼트(sement)
- 여러 개의 익스텐트들이 모여 하나의 세그먼트를 구성
- 하나의 세그먼트에는 같은 종류의 데이터가 저장됨.
- 하나의 세그먼트는 하나의 테이블 스페이스에 저장됨.
- 하나의 세그먼트를 구성하는 익스텐트들은 디스크상 연속적이지 않을 수 있음.
# 데이터 세그먼트 : 테이블이 저장되는 세그먼트
# 인덱스 세그먼트 : 인덱스(index)의 정보가 저장되는 세그먼트
4) 테이블 스페이스 (table space)
- 하나의 데이터베이스는 "오라클" 의 논리적 저장 단위인 "테이블 스페이스" 들로 구성된다.
- 하나의 테이블 스페이스에는 하나 이상의 세그먼트를 포함한다.
<물리적 구성요소>
1) 데이터 파일 (datafile)
- 오라클에서 관리하는 데이터가 실제로 저장되는 디스크 상의 파일
- Oracle -> oradata/orcl 폴더의 데이터 파일들이 있다.
# orcl폴더의 데이터 파일의 역할
SYSAUX01.DBF, SYSTEM01.DBF : 오라클 시스템 관리를 위해 만들어진 데이터 파일
TEMP01.DBF : 임시 데이터들을 저장하기 위한 데이터 파일
USER01.DBF : 사용자 계정을 위해 만들어진 데이터 파일
EXAMPLE01.DBF : 예제 테이블들을 저장하고 있는 데이터 파일
UNDOTBS01.DBF : 데이터에 문제가 발생했을 때 복구를 위한 정보가 있는 데이터 파일
2) 컨트롤 파일 (control file)
- 데이터베이스의 물리적 구조, 데이터베이스 이름, redo 로그파일들의 위치정보, 데이터베이스 생성 시간, 현재 로그 번호, 체크포인트 정보 등이 저장된 파일.
3) Redo 로그파일
- 데이터베이스의 변경 내역을 저장하는 파일
- 데이터 변경 과정에서 장애가 발생하여 변경내용이 데이터베이스에 반영되지 못했을 경우 온라인 redo 로그 파일을 이용하여 복구한다.
4) 설정 파일 (parameter file)
- 데이터베이스와 데이터베이스 서버와 관련된 설정 정보 등이 저장됨.
5) alert/trace 로그 파일
- 오라클 서버 내부에서 오류가 발생할 경우 그 오류에 대한 정보나 메시지를 저장하는 파일이다.
- 오라클 오류가 발생할 경우 오류에 대한 정보나 메시지를 저장하는 파일을 trace 파일이라고 한다.
- trace 파일에 저장된 오류나 메시지를 발생 시간 순서별로 저장한 것을 alert 로그 파일이라고 한다.
# 참고 문서
book.interpark.com/amway/product/BookDisplay.do?_method=detail&sc.shopNo=0000400000&sc.prdNo=265835926www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788993163230
'Backend > Database' 카테고리의 다른 글
[Oracle] MERGE INTO 사용법 (1) | 2022.10.13 |
---|---|
[Oracle] 오라클과 JDBC 연결하는 방법 (11g 엔터프라이즈 버전) (3) | 2021.01.18 |
[Oracle] SQL plus 에서 계정 등록 및 권한 설정 (0) | 2021.01.14 |
[Oracle] HTTP Listener Port 변경하기 (0) | 2021.01.14 |