----------------------------------
테이블스페이스 이해
----------------------------------

* 테이블스페이스는 논리적인 Storage 개념이다.
* 테이블스페이스는 물리적으로 하나 이상의 데이터 파일로 구성된다.
* 테이블스페이스는 크게 SYSTEM 테이블스페이스와 NON-SYSTEM 테이블스페이스로 구분된다.
* Segment는 Data, Index, Rollback, Temporary Segment등으로 구분된다.
* Segment는 하나 이상의 Extent 들로 구성된다.
* Extent란 연속적으로 할당 된 Free Block의 모음이다.
* Extent는 기본 Storage 할당 단위이다.
* DB Block은 기본 I/O 단위이다.
- 테이블스페이스 생성
create tablespace test_data
datafile 'f:/oracle/oradata/test_data01.dbf' size 10M
default storage ( initial 2M
next 1M
minextents 1
maxextents 121
pctincrease 0 );
- 두개의 파일로 구성된 하나의 테이블스페이스 만들기
ALTER TABLESPACE test_data
ADD DATAFILE 'f:/oracle/oradata/test_data02.dbf' SIZE 10M;
- 테이블스페이스 이름 변경하기
ALTER TABLESPACE test_data
RENAME DATAFILE 'f:/oracle/oradata/test_data02.dbf' TO
'f:/oracle/oradata/test_data03.dbf' ;
- 테이블스페이스 제거
- Drop시에 segment 등의 내용이 있다면 삭제가 안된다
- 이경우에 including contents 를 하면 무조건 삭제 된다.
- A(a table), B(b table)라는 테이블스페이스가 있는데
a table이 b table을 참조하고 있다. B를 including contents로 삭제하면
무결성이 깨져서 안되는데 이경우에 cascade constraints를 사용하면 삭제된다.
- Drop 후 os에서 파일을 삭제해야 한다.
DROP TABLESPACE tablespace
INCLUDE CONTENTS
CASCADE CONSTRAINTS;
'database > oracle' 카테고리의 다른 글
TABLESPACE 정보 조회 (0) | 2012.03.21 |
---|---|
TABLESAPCE 이해2 (0) | 2012.03.21 |
Sub Query (0) | 2012.03.21 |
JOIN (0) | 2012.03.21 |
그룹 결과 제한 - HAVING 사용 (0) | 2012.03.21 |