create tablespace : 오라클 데이터베이스내에서 생성되고 처리될 테이블들의 레코들들이 실제로 존재할 영역을 디스크 상에 물리적으로 생성시키는 명령어이다.
tablespace_name : 생성될 테이블 스페이스의 이름이다.
datafile : 데이터베이스내에서 사용되는 레코드들이 실제로 디스크상에 파일로 존재하게 되는데, 이때의 파일의 위치와 이름을 지정하는 곳이다.
data_file : 데이터베이스내에서 사용되는 레코드들이 실제로 디스크상에 파일로 존재하게 되는데, 이때의 파일의 위치와 이름을 지정하는 곳이다.
data_full_file_name : 레코드들이 실제로 존재할 디렉토리(절대패스사용)와 파일의 이름이다.
size : 테이블 스페이스내의 레코드들을 저장할 디스크상의 파일의 최대 코기를 지정해 줄 수 있다.
datafilesize : 레코드들을 저장할 파일의 크기를 k(킬로바이트), M(메가바이트)의 단위를 사용하여 나타낼 수 있다.
initial : 테이블 생성시 해당 테이블에 할당되어 있는 영역의 크기를 지정해 줄 수 있다.
datafilesize_min : 테이블생성시 사용할 수 있는 공간의 크기로, 예를 들어 10m로 지정되면 생성된 임의의 테이블에 입력되는 데이터들을 10m의 영역에 저장한다는 의미이다.
next : 처음에 저장될 데이터의 영역인 initial만큼을 다 쓰고 더 이상의 공간이 없을 때, 사용할 수 있는 영역을 할당 시켜 준다.
datafilesize_max : 추가로 테이블에 데이터가 입력될 때, 사용할 수 있는 여역의 크기이다. 예를 들어 5M를 할당하여 두면, 임의의 테이블이 사용한 영역이 10M (위의 initial영역의 크기이다)를 넘을 경우, 주가로 5M만큼의 영역을 더 사용할 수 있게 된다. 따라서 총 사용공간은 15M가 된다.
minextents minuum : next 영역으로 할당할 수 있는 최소의 갯수를지정해 줄 수 있다.
maxextents maxnum : next 영역으로 할당할 수 있는 최대의 갯수를 지정해 줄 수 있다.
picincrease num : next를 지정하여 추가로 사용할 영역을 확장하고자 할 때, 늘어날 영역의 크기를 '%'로 나타낸 값이다. pct는 '%'를 의미한다. 예를 들어 picincrease 5라고 지정해 두면, next로 추가로 작업할 영역을 늘여 줄때, 처음에는 next롤 설정된 영역만을 확장시켜 주나, 두 번째부터는 next영역의 크기에서 5%만큼 더 크게 확장시켜 주게 되는 것이다.
online/offline : 테이블 스페이스 생성시 online이나 offline 중 택일하여 쓸 수 있으며, 생략하면 online을 의미한다.
online으로 설정하여 테이블 스페이스를 생성하면, 테이블스페이스를 생성함과 동시에 데이터베이스 사용자들이 사용가능하다는 것을 의미하며, 일반적으로 online으로 설정하여 사용한다.
-- 테이블스페이스 정보 조회
select * from dba_data_files;
select * from dba_tablespaces;
-- 테이블스페이스생성
create tablespace info_data
datafile '/oracle/infodata/infodata.dbf'
size 200m
default storage(
initial 80k
next 80k
minextents 1
maxextents 121
pctincrease 80
)online;
-- 테이블스페이스 online / offline
> alter tablespace tablespace_name offline;
> alter tablespace tablespace_name online;
-- 생성된 테이블 스페이스의 추가하기 공간 늘여주기
alter tablespace info_data
add datafile '/oracle/infodata/infodata/dbf'
size 100m;
-- 생성된 테이블 스페이스 크기 변경하기
alter database datafile '/oracle/infodata/infodata.dbf'
RESIZE 200M;
-- 테이블스페이스 변경하기
alter tablespace tax2110
default storage(
initial 1024k
next 2048k
minextents 1
maxextents 5
)online ;
pctincrease 기본이 50%이다
-- 테이블스페이스 자동확장 추가 (Automatic Extension)
alter tablespace tax2110
add datafile 'd:\tablespace\tax2110_03.dbf'
size 50m
autoextend on next 10m
maxsize 100m;
-> maxsize 를 지정할때 데이터 화일보다 크거나 같아야함.
-- 기존테이블스페이스에 자동확장 변경하기
alter database datafile 'd:\tablespace\tax2110_03.dbf'
autoextend on next 10m
maxsize 100m;
-- 테이블스페이스 삭제
drop tablespace tablespace_name
including contents --> 테이블스페이스의 모든 세그먼트를 삭제( 데이터가 있는 테이블스페이스는 삭제할수 없다)
cascade constraints; --> 삭제된 테이블스페이스 내의 테이블의 기본키와 유일키를 참조하는
다른 테이블스페이스의 테이블로부터 참조무결성 제약 조건을 삭제합니다.
$ rm kit.dbf -- Drop한 tablespace명의 Datafile이 kit.dbf일때.
-- 테이블 스페이스 의 물리적파일까지 삭제하기
drop tablespace test_tbs including contents and datafiles;
-- 오프라인 테이블스페이스
alter tablespace tax2110 offline;
-- 데이터베이스 사용자 아이디 생성 및 수정
create user 사용자아이디
identified by 비밀번호(새비밀번호)
-- 유저생성
create user panda
identified by panda123
default tablespace yswater_ts;
-- 생성한 유저에 권한주고 연결하기
grant resource,connect to panda;
grant dba to panda;
CREATE TABLESPACE SWERPDB_DATA
DATAFILE 'D:\DATABASE\SWERPDB_DATA01.ORA' SIZE 100M
AUTOEXTEND ON NEXT 10M MAXSIZE 4000M
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
CREATE TABLESPACE SWERPDB_INDEX
DATAFILE 'D:\DATABASE\SWERPDB_INDEX01.ORA' SIZE 100M
AUTOEXTEND ON NEXT 10M MAXSIZE 4000M
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
CREATE TEMPORARY TABLESPACE SWERPDB_TEMP
TEMPFILE 'D:\DATABASE\SWERPDB_TEMP01.ORA' SIZE 100M
AUTOEXTEND ON NEXT 5M MAXSIZE 1000M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1024K;
-- USER 생성하여 tablespace를 USER에게 지정
create user swerpuser identified by swerpuser
default tablespace swerpdb_data
temporary tablespace swerpdb_temp;
-- USER에게 DB권한설정
grant connect, resource, dba to swerpuser;
-- drop user swerpuser cascade;
-- drop tablespace swerpdb_data including contents cascade constraints;
-- drop tablespace swerpdb_index including contents cascade constraints;
-- drop tablespace swerpdb_temp including contents cascade constraints;
grant CREATE DATABASE LINK, CREATE TABLE, ALTER ANY TABLE, BACKUP ANY TABLE, DROP ANY TABLE, SELECT ANY TABLE,INSERT ANY TABLE, UPDATE ANY TABLE, DELETE ANY TABLE,
CREATE PROCEDURE, CREATE ANY PROCEDURE, ALTER ANY PROCEDURE, DROP ANY PROCEDURE, EXECUTE ANY PROCEDURE, CREATE SESSION,LOCK ANY TABLE,COMMENT ANY TABLE,
CREATE SEQUENCE, CREATE ANY SEQUENCE, ALTER ANY SEQUENCE, DROP ANY SEQUENCE,SELECT ANY SEQUENCE, CREATE TRIGGER, CREATE ANY TRIGGER, ALTER ANY TRIGGER, DROP ANY TRIGGER,
CREATE VIEW, CREATE ANY VIEW,DROP ANY VIEW
TO RMUSER;
'# DataBase > Oracle' 카테고리의 다른 글
오라클 명령어 정리 (0) | 2015.08.16 |
---|---|
create tablespace (0) | 2015.08.16 |
오라클 SID 확인방법 (0) | 2015.08.16 |
sys접속방법 (0) | 2015.08.16 |
안녕하세요. 이곳은 IT위주의 잡다한 정보를 올려두는 개인 블로그입니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!