SQL_TEMPORARY TABLESPACE & AUTOEXTEND
TEMPORARY TABLESPACE
테이블스페이스 파일 용량이 부족할 때를 대비해서
임시 테이블스페이스와 임시 파일을 계정에 연결
TEMPORARY TABLESPACE 생성 & 연결
§ 형식_
▶ 임시 테이블스페이스 생성
[ SQL> create [ temporary ] tablespace 임시ts명 tempfile '경로/파일명.dbf' size nm; ]
▶ 계정에 임시 테이블스페이스 연결
[ SQL> create user 계정명 identified by 암호
default tablespace 테이블스페이스명 temporary tablespace 테이블스페이스명; ]
# 예제
① temp3라는 임시 테이블스페이스 생성
[ SQL> create temporary tablespace temp3 tempfile 'c:\webtest\2.db\temp3.dbf' size 50m;
테이블스페이스가 생성되었습니다.
select * from v$tablespace; ]
TS# | NAME | INC | BIG | FLA | ENC |
---|---|---|---|---|---|
0 | SYSTEM | YES | NO | YES | |
... | ... | ... | ... | ... | |
9 | TEMP3 | NO | NO | YES |
② lee2/lee2 계정을 생성하면서 기본 테이블스페이스는 oradata2,
임시 테이블스페이스는 temp3에 연결
[ SQL> create user lee2 identified by lee2
default tablespace oradata2 temporary tablespace temp3;
사용자가 생성되었습니다. ]
③ lee2계정에 로그인, 리소스 권한 부여
[ SQL> grant connect,resource to lee2;
권한이 부여되었습니다. ]
④ lee2계정에서 기본 테이블스페이스, 임시 테이블스페이스 확인
[ SQL> select username, default_tablespace, temporary_tablespace from user_users; ]
USERNAME | DEFAULT_TABLESPACE | TEMPORARY_TABLESPACE |
---|---|---|
LEE2 | ORADATA2 | TEMP3 |
TABLESAPCE_AUTOEXTEND
테이블스페이스에 연결되어 있는 데이터 파일의 용량이 자동으로 확장하도록 설정
§ 형식
▶ 용량 부족 시 테이블스페이스가 자동으로 ~MB씩 증가하며 최대 ~MB까지 확장하도록 설정
[ SQL> alter database datafile '경로/파일명.dbf'
autoextend on next nm(증가치) maxsize nm(최대용량); ]
# 예제
▶ oradata2 테이블스페이스의 용량이 부족할 경우
자동으로 2MB씩 증가하며 최대 200MB까지 확장되도록 설정
[ SQL> alter database datafile 'c:\webtest\2.db\oradata2.dbf'
autoextend on next 2m maxsize 200m;
데이타베이스가 변경되었습니다. ]
보조배터리와 같은 역할을 한다고 할 수 있는 TEMPORARY TABLESPACE와
테이블스페이스의 물리적 저장 공간인 데이터파일의 용량이 사용량에 따라 자동으로 확장되도록 할 수 있는
AUTOEXTEND에 대해 알아보았습니다.