이곳은 임시자료를 저장하는 Tablespace 로 DB가 재시작하면 이 곳에 있던 내용은 모두 사라지며 일반적으로 정렬작업 등을 수행할 경우 PGA 공간이 부족하면 이곳을 이용하여 정렬작업, export/import 등을 하게 됨
Temporary Tablespace는 하나의 Instance에 여러 개 만들 수 있으므로 성능 향상을 위해 각 사용자 별로 하나씩 각각 할당해 주는 것이 좋으며 특히 정렬작업이 크게 일어나는 작업 전에 Temporary Tablespace를 크게 만들어 주고 작업하는 것이 성능향상에 좋음
11g는 Temporary Tablespace Group 기능을 적극 활용하기 권장
temporary tablespace 조회
SQL> !cat temporarytablespace.sql
set line 200
col tablespace_name for a10
col file_name for a50
select file_id, tablespace_name, bytes/1024/1024 MB, file_name
from dba_temp_files;
SQL> @temporarytablespace.sql
FILE_ID TABLESPACE MB FILE_NAME
---------- ---------- ----- --------------------------------------------------
1 TEMP 29 /app/oracle/oradata/testdb/temp01.dbf
신규 Temporary tablespace 생성하기
SQL> create temporary tablespace temp2
2 tempfile '/app/oracle/oradata/testdb/temp02.dbf' size 10M
3 autoextend on;
Tablespace created.
SQL> @temporarytablespace.sql
FILE_ID TABLESPACE MB FILE_NAME
---------- ---------- ----- --------------------------------------------------
2 TEMP2 10 /app/oracle/oradata/testdb/temp02.dbf
1 TEMP 29 /app/oracle/oradata/testdb/temp01.dbf
Default Temporary Tablespace 설정하기
SQL> !cat defaultemporary.sql
set line 200
col property_name for a30
col property_value for a10
col description for a50
select * from database_properties
where property_name like 'DEFAULT_TEMP%';
SQL> @defaultemporary
PROPERTY_NAME PROPERTY_V DESCRIPTION
------------------------------ ---------- --------------------------------------------------
DEFAULT_TEMP_TABLESPACE TEMP Name of default temporary tablespace
SQL> alter database default temporary tablespace temp2;
Database altered.
SQL> @defaultemporary
PROPERTY_NAME PROPERTY_V DESCRIPTION
------------------------------ ---------- --------------------------------------------------
DEFAULT_TEMP_TABLESPACE TEMP2 Name of default temporary tablespace
크기 변경
SQL> @defaultemporary
PROPERTY_NAME PROPERTY_V DESCRIPTION
------------------------------ ---------- --------------------------------------------------
DEFAULT_TEMP_TABLESPACE TEMP2 Name of default temporary tablespace
SQL> alter database tempfile '/app/oracle/oradata/testdb/temp02.dbf' resize 100M;
Database altered.
SQL> @temporarytablespace
FILE_ID TABLESPACE MB FILE_NAME
---------- ---------- ----- --------------------------------------------------
2 TEMP2 100 /app/oracle/oradata/testdb/temp02.dbf
1 TEMP 29 /app/oracle/oradata/testdb/temp01.dbf
삭제하기
SQL> drop tablespace temp2;
drop tablespace temp2
*
ERROR at line 1:
ORA-12906: cannot drop default temporary tablespace
SQL> alter database default temporary tablespace temp;
Database altered.
SQL> drop tablespace temp2;
Tablespace dropped.
그룹하기
SQL> create temporary tablespace temp_scott1
2 tempfile '/app/oracle/oradata/testdb/temp_scott01.dbf' size 10M
3 tablespace group temp_scott_group;
Tablespace created.
SQL> select * from dba_tablespace_groups;
GROUP_NAME TABLESPACE
------------------------------ ----------
TEMP_SCOTT_GROUP TEMP_SCOTT1
기존 그룹에 추가
SQL>alter tablespace temp_scott2 tablespace group temp_scott_group;
그룹을 사용자에게 할당
SQL>alter user scott temporary tablespace temp_scott_group;
그룹을 default temporary tablespace로 지정
SQL>alter database default temporary tablespace temp_scott_group;
그룹에서 탈퇴
SQL>alter tablespace temp_scott2 tablespace group '';
'IT > oracle' 카테고리의 다른 글
NLS_DATE_FORMAT (0) | 2015.02.03 |
---|---|
Oracle FlashBack 을 이용한 데이터 복구 (0) | 2015.02.03 |
오라클 RMAN 백업의 주요 특징 (0) | 2015.02.02 |
아카이브 로그 모드(Archive Log Mode)란? (0) | 2015.02.02 |
Extent와 Segment (0) | 2015.01.30 |
Undo Tablespace와 관리 (0) | 2015.01.30 |
Tablespace 관리 (0) | 2015.01.30 |
Tablespace File 이동 (0) | 2015.01.30 |
Tablespace의 종류 (0) | 2015.01.29 |
Redo Log File 관리 하기 (0) | 2015.01.29 |