728x90

    테이블 스페이스 란?


    테이블 및 인덱스를 저장해놓은 오라클의 논리적인 공간
    실제 물리적인 공간은 데이터파일(확장자.DBF)입니다.

    테이블 스페이스의 관리는 관리자만 가능합니다.

     




    create tablespace 테이블스페이스명

    datafile

    '저장될경로\파일명.dbf' size 30m //size는 mb kb만 가능

    extent management local

    segment space management auto;





    TABLESPACE

    최고야-[이모티콘]어밴드


    오라클은 먼저 물리적인공간 디스크에 저장을 시킨후 메모리에 등재시킵니다.


    일반 메모장이나, 그림판같은 유틸같이 미리 메모리에 등재한후 디스크에 저장하는 방식의 반대입니다.


    (쿼리로 확인)


    select * from dba_tablespaces;

    TABLESPACE


    select * from dba_data_files;

    TABLESPACE


    (만들어진 테이블 스페이스 사용하기)

    create table 테이블명(

     no number(5)

    ,name varchar2(20)

    )tablespace 지정하신 테이블스페이스명;


    --> 다른 tablespace로 지정하지 않고 세미콜론(;)으로 끝낸다면.

    디폴트 테이블 스페이스인 USER로 생성된다.


    (테이블 스페이스 오토사이즈 설정하기)

    create tablespace 테이블스페이스명

    datafile

    '저장될경로\파일명.dbf' size 30m

    AUTOEXTEND ON 

    MAXSIZE 90M

    extent management local

    segment space management auto;



    -->위의 명령어에서

    AUTOEXTEND ON

    MAXSIZE 90M

    부분이

    데이터가 정해진공간을 넘어가게되면 자동으로 MAXBYTES공간의 90M를 더 사용한다는 것을 알수 있습니다.


    (하나의 테이블 스페이스에서 DBF 여러개로 만들기)

    create tablespace 테이블스페이스명

    datafile

    '저장될경로\파일명_1.dbf' size 100m

    --DBF 파일을 만들때는 테이블명을 주고 그다음에 _01, _02 를 준다

    --왜냐하면 테이블스페이스 공간이 모자르면 새로 만들어야되기 때문.

    AUTOEXTEND ON 

    MAXSIZE 200M,

    '저장될경로\파일명_2.dbf' size 100m

    AUTOEXTEND ON 

    MAXSIZE 200M,

    '저장될경로\파일명_3.dbf' size 100m

    AUTOEXTEND ON 

    MAXSIZE 200M,

    '저장될경로\파일명_4.dbf' size 100m

    AUTOEXTEND ON 

    MAXSIZE 200M

    extent management local

    segment space management auto;


    Posted by 천상나타