[Oracle] Tablespace 생성, User 생성 방법

2019. 2. 28. 11:19Programming/Database

반응형

1. TABLESPACE 생성

	
CREATE TABLESPACE TEST_UP DATAFILE
'TEST_UP' SIZE 2048M AUTOEXTEND ON NEXT 4M MAXSIZE UNLIMITED
LOGGING
PERMANENT
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 8K
SEGMENT SPACE MANAGEMENT MANUAL
FLASHBACK ON;  
	

Tablespace의 이름을 TEST_UP으로 하고, 그 크기를 2G로 설정하며, 2G 초과시 자동으로 4M 씩 자동 확장 생성한다.

 

 

 

2. USER 생성

	
CREATE USER TESTER IDENTIFIED BY TESTERPW
DEFAULT TABLESPACE TEST_UP
PROFILE DEFAULT
QUOTA UNLIMITED ON TEST_UP 
	

TESTER/TESTERPW 유저를 TEST_UP TABLESPACE에 생성한다.

 

 

 

3. USER에 대한 GRANT

	
GRANT "CONNECT" TO TESTER WITH ADMIN OPTION;
GRANT "DBA" TO TESTER WITH ADMIN OPTION;
GRANT "RESOURCE" TO TESTER WITH ADMIN OPTION;
ALTER USER TESTER DEFAULT ROLE "CONNECT", "DBA", "RESOURCE";  
	

생성된 TESTER 유저에 CONNECT, DBA, RESOURCE 권한을 부여한다.

 


 

4. USER DROP

	
DROP USER TESTER CASCADE; 
	



5. TABLESPACE DROP
	
DROP TABLESPACE TEST_UP INCLUDING CONTENTS;
 
	

세그먼트 안의 TABLE과 INDEX를 먼저 삭제한다. 그 다음에 TABLESPACE를 시스템에서 삭제해야 한다.

 

 


DROP TABLESPACE TEST_UP INCLUDING CONTENTS AND DATAFILES;
 
	


데이터 파일까지 한 번에 제거한다.


	
SELECT TABLESPACE_NAME, COUNT(8) AS FRAGMENTS, SUM(BYTES) AS TOTAL, MAX(BYTES) AS LARGEST
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME 
	


ALTER TABLESPACE USERS OFFLINE;
ALTER TABLESPACE USERS ONLINE; 
	


-- 요약 --


테이블스페이스 정보 조회

SELECT * FROM DBA_DATA_FILES;

 

DBA_TABLESPACES 테이블스페이스 목록

SELECT TABLESPACE_NAME, STATUS, CONTENTS FROM DBA_TABLESPACES;

 

DBA_DATA_FILES 테이블스페이스 파일 목록

SELECT FILE_NAME, BYTES, STATUS FROM DBA_DATA_FILES;

 

DBA_FREE_SPACE 테이블스페이스 잔여 공간

SELECT TABLESPACE_NAME, BYTES, BLOCKS FROM DBA_FREE_SPACE;

 

테이블스페이스 생성

create tablespace info_data

datafile '/DATA/oracle/oradata/ORCL/infodata.dbf'

size 200m

default storage(

           initial               80k

           next                80k

           minextents        1

           maxextents        121

           pctincrease        80

           )online;

 

테이블스페이스 online/offline

ALTER TABLESPACE info_data offline;

ALTER TABLESPACE info_data online;

 

생성된 테이블스페이스의 추가하기 공간 늘여주기

ALTER TABLESPACE info_data

ADD DATAFILE '/DATA/oracle/oradata/ORCL/dbf'

SIZE 100m;

 

생성된 테이블스페이스 크기 변경하기

ALTER DATABASE DATAFILE '/DATA/oracle/oradata/ORCL/infodata.dbf'

RESIZE 200M;

 

기존 테이블스페이스에 자동확장 변경하기

ALTER DATABASE DATAFILE '/DATA/oracle/oradata/ORCL/infodata.dbf'

AUTOEXTEND ON NEXT 10m

MAXSIZE 100m;

 

테이블스페이스 삭제

DROP TABLESPACE info_data

INCLUDING CONTENTS

CASCADE CONSTRAINTS;

 

테이블스페이스의 물리적 파일까지 삭제하기

DROP TABLESPACE info_data INCLUDING CONTENTS AND DATAFILES;

 

데이터베이스 사용자 아이디 생성 및 수정

CREATE USER scbyun

IDENTIFIED BY scbyun;

 

생성한 유저에 권한주고 연결하기

GRANT RESOURCE, CONNECT TO scbyun;

GRANT DBA TO scbyun;



출처:

 https://fillin.tistory.com/60

 https://sangchul.kr/468    


반응형