ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SQL_TABLESPACE 연결, 확인 & DATA DICTIONARY (2)
    Data Base_Oracle/SQL 2020. 1. 13. 22:27

    TABLESPACE 연결

    § 형식

    ▶ 계정 연결
    [ SQL> create user 계정명 identified by 암호 default tablespace 테이블스페이스명; ]

     

    ※ 해당 계정에서 만든 모든 테이블, 뷰, 시퀀스 등이 연결한 테이블스페이스에 저장됨

     

    ▶ 테이블 연결
    [ SQL> create table 테이블명 tablespace 테이블스페이스명; ]

     

    ※ 따로 설정하지 않으면 [tablespace users]가 생략된 상태로 테이블이 생성됨
    → 작업 내용이 USERS 테이블스페이스에 저장

    # 예제

    ▶ sys 계정에서 oradata2를 테이블스페이스로 갖는 kim2 유저 생성
    [ SQL> create user kim2 identified by kim2 default tablespace oradata2;
    사용자가 생성되었습니다. ]

     

    ※ kim2계정에서 작업한 모든 내용은 oradata2 테이블스페이스에 저장됨

     

    ▶ sys 계정에서 oradata2를 테이블스페이스로 갖는 t2테이블 생성
    [ SQL> create table t2(c1 number) tablespace oradata2;
    테이블이 생성되었습니다. ]

     

    ※ t2테이블에서 작업한 내용은 oradata2 테이블스페이스에 저장

     

    ▶ kim2 계정에서 oradata2를 테이블스페이스로 갖는 test테이블 생성
    [ SQL> create table test(id number);
    테이블이 생성되었습니다. ]

     

    ※ kim2 계정은 기본 테이블스페이스로 oradata2가 연결되어 있기 때문에
    테이블을 생성하면 자동으로 oradata2에 저장됨


    TABLE SPACE 확인_DATA DICTIONARY

    ※ user_users

    해당 계정과 계정에 연결된 테이블스페이스의 정보를 담고 있는 Oracle 시스템 테이블

    ▷ [ SQL> desc user_users ]

    이름 널? 유형
    USERNAME NOT NULL VARCHAR2(30)
    USER_ID NOT NULL NUMBER
    ... ... ...
    DEFAULT_TABLESPACE NOT NULL VARCHAR2(30)
    TEMPORARY_TABLESPACE NOT NULL VARCHAR2(30)
    ... ... ...

    ※ user_tables

    해당 계정의 테이블과 연결된 테이블스페이스 정보를 갖고 있는 Oracle 시스템 테이블

    ▷ [ SQL> desc user_tables ]

    이름 널? 유형
    TABLE_NAME NOT NULL VARCHAR2(30)
    TABLESPACE_NAME   VARCHAR2(30)
    ... ... ...

    # 예제

    ▶ kim2 계정에서 현재 계정과 계정에 연결되어 있는 default tablespace 확인
    [ SQL> select username,default_tablespace from user_users; ]

    USERNAME DEFAULT_TABLESPACE
    KIM2 ORADATA2

    ▶ kim2 계정 내의 테이블과 테이블에 연결되어 있는 tablespace 확인
    [ SQL> select table_name,tablespace_name from user_tables; ]

    TABLE_NAME TABLESPACE_NAME
    TEST ORADATA2

    테이블스페이스를 계정/테이블에 연결하고, 연결된 테이블스페이스를 확인하는 방법에 대해 알아보았습니다.

    작업 내용 또는 계정에 따른 저장 공간의 분리가 필요하다면 테이블스페이스를 사용할 수 있겠습니다.

    댓글

Designed by Tistory.