oracle tablespace 생성 삭제

DB & SQL 2015. 10. 18. 17:45

tablespace 목록 보기

SELECT TABLESPACE_NAME, STATUS, CONTENTS FROM DBA_TABLESPACES;

tablespace 파일 목록 보기

SELECT FILE_NAME, TABLESPACE_NAME, BYTES, STATUS FROM DBA_DATA_FILES;

tablespace 남은 공간 크기 보기

SELECT TABLESPACE_NAME, BYTES, BLOCKS FROM DBA_FREE_SPACE;

tablespace 삭제

DROP TABLESPACE tablespace-name
INCLUDING CONTENTS AND DATAFILES
CASCADE CONSTRAINTS;

tablespace 생성

데이터용 테이블스페이스 생성이며
파일 지정은 전체경로를 써주어야 하며
생성 위치와 파일 확장자는 'ORACLE_BASE/oradata/ORACLE_SID/*.dbf'이다.
만약 서브폴더를 이용하여 관리하여야 할 경우에
폴더까지 생성해 주지 않으므로 서브폴더는 미리 생성해 둬야한다.

CREATE TABLESPACE tablespace-name_data
DATAFILE '/usr/oracle/app/oradata/orcl/data/file_name.dbf'
SIZE 1G
AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED
LOGGING
ONLINE
PERMANENT
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 8K
SEGMENT SPACE MANAGEMENT AUTO
FLASHBACK ON;

임시작업용 테이블스페이스 생성이며
파일 지정은 전체경로를 써주어야 하며
생성 위치와 파일 확장자는 'ORACLE_BASE/oradata/ORACLE_SID/*.dbf'이다.
만약 서브폴더를 이용하여 관리하여야 할 경우에
폴더까지 생성해 주지 않으므로 서브폴더는 미리 생성해 둬야한다.

CREATE TEMPORARY TABLESPACE tablespace-name_temp
TEMPFILE '/usr/oracle/app/oradata/orcl/temp/file_name.dbf'
SIZE 50M
AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED;

테이블스페이스 생성시 파일 경로를 지정하지 않는 경우에는(파일명만 넣은 경우)
아래 경로처럼 "ORACLE_HOME/dbs"에 생성됨

/usr/oracle/app/product/11.2.0/dbhome_1/dbs

데이터 테이블스페이스 생성은 아래처럼 간단히 생성할 수도 있다.

CREATE TABLESPACE tablespace-name_data
DATAFILE '/usr/oracle/app/oradata/orcl/data/file_name.dbf'
SIZE 100M
AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED;
: