본문 바로가기
오라클/계정 생성 및 table space 생성

[ ORACLE ] 계정 생성 및 table space 생성

by 정윤재 2013. 3. 18.

Oracle 에 대해서 프로젝트를 시작 할 때 프로젝트에 대한 계정을 생성 하고

 

table space 를 생성 해야 하는데 프로젝트를 진행 하면서 아래와 같이 진행 하면

 

됐었습니다.

 

0. sqlplus '/as sysdba' 로 오라클을 접속 합니다.

 

 

1. 테이블 스페이스 생성

 

create tablespace 테이블스페이스명 datafile '생성경로/SSM_PUSH.dbf' size 생성될 데이터 파일 크기 autoextend on next 테이터파일 용량 초과시 자동증가 용량 maxsize 데이터파일 최대 크기;

 

ex)create tablespace SSM_PUSH datafile '/u01/app/oracle/oradata/orcl/SSM_PUSH.dbf' size 512M autoextend on next 128M maxsize 1024M;
 
create temporary tablespace SSM_PUSH_TEMP tempfile '생성경로/SSM_PUSH_TEMP.dbf' size 256M autoextend on next 128M maxsize 512M;

 

ex)create temporary tablespace SSM_PUSH_TEMP tempfile '/u01/app/oracle/oradata/orcl/SSM_PUSH_TEMP.dbf' size 256M autoextend on next 128M maxsize 512M;

 

(temp table space 생성)

 

=> 생성 경로와 파일 사이즈를 변경해야함.

 

 

2. 사용자 생성

 

create user user_id identified by user_password default tablespace tablespace_name temporary tablespace temp_tablespace_name;

 

ex)create user mts_mqtt identified by mts_mqtt default tablespace SSM_PUSH temporary tablespace SSM_PUSH_TEMP;

 

 create user 사용자 ID identified by password 양식임

 

 

3. 권한 주기

grant connect to 계정 이름

ex)grant connect to mts_mqtt;

 

grant resource to 계정 이름

ex)grant resource to mts_mqtt;

 

(주요 권한 목록

 

CONNECT : ALTER SESSION, CREATE CLUSTER, CREATE DATABASE LINK,

                  CREATE SEQUENCE, CREATE SESSION, CREATE SYNONYM,

                  CREATE TABLE, CREATE VIEW

RESOURCE : CREATE CLUSTER, CREATE PROCEDURE, CREATE TRIGGER,

                    CREATE SEQUENCE, CREATE TABLE

 

DBA : 오라클 DBA 의 모든 시스템 권한

 

SELECT_CATELOG_ROLE : 모든 테이블과 뷰에 대한 조회 권한

 

DELETE_CATELOG_ROLE : 모든 패키지에 대한 삭제 권한

 

EXECURE_CATELOG_ROLE : 모든 패키지에 대한 실행 권한)

 

위와 같이 할 수도 있고 아래와 같이 할 수도 있음


grant create session to shonm 으로 접속 접근 권한 부여 (시스템 권한)

grant create table to shonm 으로 테이블 create 권한 부여 (객체 권한)


시스템 권한
grant [권한이름|ALL] to [사용자 ID|public] [with grant option|with admin option] 양식
권한 종류는 select * from system_privilege_map 으로 확인 가능함
with grant option : A 사용자가 B 사용자의 권한을 제거 하면 B 사용자가 부여했던 C 사용자의 권한 취소
with admin option : with grant option 에서 C 사용자의 권한이 취소되지 않는 옵션


객체 권한
객체 권한은 특정 객체에 조작을 할 수 있는 권한
grant [권한이름|ALL] on [객체 이름|public] to [사용자 ID|public] [with grant option] 양식

권한 종류
select : table, view, sequence 가능
insert : table, view 가능
update : table, view 가능
delete : table, view 가능
alter : table, sequence 가능
references : table 가능
index : table 가능
execute : procedure 가능



권한 회수는

 

revoke 권한명 from 사용자 이름;

 

이렇게 하면 됩니다.

 

4. alter user user_id quota 1000m on tablespacename 으로 특정 tablespace를 1기가 사용할 수 있게 함 

 


5. 테이블 생성 스크립트 실행 (.sql 파일로 백업 받아놨다는 전제하에)

 

sqlplus -s mts_mqtt/mts_mqtt < ssm_push_table_script.sql

 

sqlplus -s mts_mqtt/mts_mqtt < ssm_push_data_script.sql

 



댓글