본문 바로가기

ORACLE TABLESPACE 생성 및 계정생성

by 애덤더미 2014. 7. 21.
반응형

1. 오라클 TableSpace  만들기     
  1) TableSpace     
     - 하나 또는 여려개의 파일로 구성된 논리적 데이터 저장 장소이다. 

       리눅스에서 계정별로 주어지는  일종의 홈디렉토리와 비슷한 개념으로 생각하면 됨.


   2) 명령어로 TableSpace 생성하기     
     - CREATE TABLESPACE 스페이스명     
        DATAFILE '저장위치'     
        SIZE 테이블 스페이스 크기     
        AUTOEXTEND ON -- 자동 확장할건지 여부     
        NEXT 증가사이즈     
        MAXSIZE 최대크기;     


   3) 예제     
       CREATE TABLESPACE BO     
       DATAFILE 'C:\폴더\BO.dbf'     
       SIZE 50M     
       AUTOEXTEND ON     
       NEXT 10M     
       MAXSIZE 150M; 

    
  4) 임시 테이블 스페이스 만들기     
      - 오라클에서 명령을 실행하면 명열을 해당 영역에 바로 저장하지 않고 

        임시 공간에 저장했다가 이후에 해당 영역으로 가져가 저장합니다. 

       이러한 이류로 임시 테이블 스페이스를 만듭니다.     
       CREATE TEMPORARY TABLESPACE HUNGRYTEMP     
       TEMPFILE 'C:\폴더\BOTEMP.dbf'     
       SIZE 50M     
       AUTOEXTEND ON     
       NEXT 10M     
       MAXSIZE 150M;     
     


2. 사용자 계정 만들기     


   1) 사용자 계정 생성 명령어     
     - CREATE USER 사용자 이름     
     - IDENTIFIED 패스워드     
     - DEFAULT TABLESPACE 테이블 스페이스 이름     
     - TEMPORARY TABLESPACE 임시 테이블 스페이스 이름     
     - ACCOUNT LOCK -- 저장 후 그 계정을 LOCK(잠금)  상태가 되도록 함.     
     - ACCOUNT UNLOCK -- 저장 후 계정을 UNLOCK(해제) 상태가 되도록 함.    

 

2) 예제     
     CREATE USER PRO     
     IDENTIFIED BY 1234     
     DEFAULT TABLESPACE BO     
     TEMPORARY TABLESPACE BO;    

 

3. 사용자 권한 주기     

 

    1) 권한 목록     
        - CONNECT : ALTER SESSION, CREATE CLUSTER, CREATE DATABASE LINK,

          CREATE SEQUENCE, CREATE SESSION, CREATE SYNONYM , CREATE TABLE, 

          CREATE VIEW 등     
        - RESOURCE : CREATE CLUSTER, CREATE PROCEDURE, CREATE SEQUENCE, 

          CREATE TABLE, CREATE TRIGGER     
        - DBA : ADMIN 옵션을 가진 모든 시스템 권한     
        - SELECT_CATELOG_ROLE : 모든 테이블과 뷰에 대한 조회 권한     
        - DELETE_CATELOG_ROLE : 모든 패키지에 대한 삭제 권한     
        - EXECURE_CATELOG_ROLE : 모든 패키지에 대한 실행 권한     
     
      2) 예제     
        GRANT CONNECT TO 계정명;     
        GRANT RESOURCE TO 계정명;     
        --보통 위 2개정도 권한을 줍니다.      

EX)     

GRANT CONNECT TO PRO;           

GRANT RESOURCE TO PRO; 


CREATE TABLE 테이블명     

( USER_ID   VARCHAR2(30 BYTE),     

  PASSWORD  VARCHAR2(10 BYTE),     
  PHONE     VARCHAR2(15 BYTE),     
  ADDRESS   VARCHAR2(50 BYTE),     
  AUTH      VARCHAR2(1 BYTE),     
  NAME      VARCHAR2(15 BYTE),     
  AGE       INT,     
  REG_DATE  DATE     
) TABLESPACE 테이블스페이스명;      

 

4. 레코드 삽입

 

INSERT INTO 테이블명      
(USER_ID,PASSWORD,PHONE,ADDRESS,AUTH,NAME,AGE,REG_DATE)      
VALUES('K@K.COM','1234','0102322222','서울시','E','이만수',50,'2010/04/01');      

 

 

 

로우 삭제
DELETE 테이블명
WHERE NAME = '이만수';

 

5. 각종 쿼리(서브쿼리)

 

SELECT MAX(AGE)      
FROM 테이블명;      
      
      
SELECT NAME      
FROM 테이블명      
WHERE  AGE = (SELECT MAX(AGE)      
FROM 테이블명      
);      
      
SELECT USER_ID, REG_DATE      
FROM 테이블명      
WHERE AGE IN (SELECT AGE      
                        FROM 테이블명

                        WHERE AGE = 30);      
                              
SELECT *      
FROM 테이블명      
WHERE AUTH = 'B';      
      
SELECT NAME, PASSWORD      
FROM 테이블명      
WHERE AUTH = 'A';      
      
SELECT NAME, ADDRESS      
FROM 테이블명      
WHERE REG_DATE       
IN (SELECT REG_DATE      
     FROM 테이블명

     WHERE REG_DATE BETWEEN '2005/01/01' AND '2007/12/31');       

 

 

6. 테이블 쿼리 실행 순서

 

SELECT - (5)
FROM - (1)
WHERE - (2)
GROUP BY - (3)
HAVING - (4)
ORDER BY - (6)

 

 

반응형