by 구루비 TEMPORARY TABLESPACE TEMPFILE ALTER DATABASE 임시 테이블스페이스 [2006.02.11]
Oracle8i에서 기본적으로 사용자를 생성 할 때 정렬 작업등에 사용될 테이블스페이스를 지정하기 위하여 CREATE USER명령에 TEMPORARY TABLESPACE 구문을 삽입할 수 있었습니다
만약 사용자를 생성할때 TEMPORARY TABLESPACE를 지정하지 않으면 SYSTEM 테이블스페이스를 TEMPORARY TABLESPACE로 사용을 하죠. 이렇게 되면 시스템 테이블스페이스에 단편화가 발생할 수 있고, 성능상의 문제가 발생할 수 있으므로 좋지가 않습니다.
Oracle9i는 TEMPORARY TABLESPACE를 지정받지 않은 사용자는 SYSTEM 테이블스페이스를 사용하는대신 DEFAULT TEMPORARY TABLESPACE을 사용합니다.
DEFAULT TEMPORARY TABLESPACE는 데이터베이스를 생성할 때 지정 할 수 있고, 따로 임시 테이블스페이스 생성 한 후 데이터베이스에 지정 할 수도 있습니다.
이렇게 DEFAULT TEMPORARY TABLESPACE를 지정해 놓으면 오라클 사용자가 SYSTEM 테이블스페이스를 TEMPORARY TABLESPACE로 사용하는것을 미연에 방지 할 수 있습니다.
-- OMF를 이용한 Locally Managed Temporary 테이블스페이스 생성 SQL> CREATE TEMPORARY TABLESPACE omf_temp TEMPFILE SIZE 50M EXTENT MANAGEMENT LOCAL; OMF 관련 해서는 'Oracle Managed Files (OMF)'강좌를 참고하세요. ^^ -- 일반적인 임시 테이블스페이스 생성 SQL> CREATE TEMPORARY TABLESPACE dflt_temp_tbs TEMPFILE 'C:\oracle\oradata\tbs\dflt_temp_tbs.dbf' SIZE 50M; -- 데이터베이스 지정 (omf_temp나 dflt_temp_tbs중 하나를 지정하시면 됩니다.) SQL> ALTER DATABASE DEFAULT TEMPORARY TABLESPACE omf_temp; 데이타베이스가 변경되었습니다. -- SCOTT사용자의 TEMPORARY_TABLESPACE가 변경된 것을 확인 할 수 있습니다. SQL> SELECT username, temporary_tablespace FROM DBA_USERS WHERE username = 'SCOTT'; USERNAME TEMPORARY_TABLESPACE ----------------------- ------------------------------ SCOTT OMF_TEMP
- 강좌 URL : http://www.gurubee.net/lecture/1878
- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.