temp tablespace 는 sort 작업과 글로벌 임시테이블을 저장하는데에 사용된다.

ex) 인덱스 생성, analyze, select distinct , order by , group by , union, intersect, minus,Sort-Merge joins등

temp tablespace 가 부족할 경우 아래와 같은 에러가 발생한다.
ORA-1652: unable to extend temp segment by 8 in tablespace

1. temp tablespace 용량 및 파일 확인

col NAME format a60
col TOTAL format a10
col USED format a10
col FREE format a10
col USAGE format a10

SELECT B.NAME ,B.BYTES/1024/1024 || ' M' TOTAL ,A.BYTES_USED/1024/1024 || ' M' USED,(B.BYTES-A.BYTES_USED)/1024/1024 || ' M' "FREE", ROUND(A.BYTES_USED/B.BYTES * 100) || '%' "USAGE" FROM
(SELECT BYTES_USED,FILE_ID FROM V$TEMP_EXTENT_POOL)A,
(SELECT BYTES,FILE#,NAME FROM V$TEMPFILE)B
WHERE A.FILE_ID = B.FILE#

2. temp tablespace 사용중인 아이디 및 쿼리 확인.
SELECT su.USERNAME,su.TABLESPACE,su.SEGTYPE,su.SEGFILE#, su.SEGBLK#, su.BLOCKS, st.SQL_TEXT
FROM v$sort_usage su, v$sql st
WHERE su.TABLESPACE='TEMP' and su.SEGTYPE='LOB_DATA' and su.sql_id = st.sql_id  order by BLOCKS;
2013/07/03 09:24 2013/07/03 09:24

트랙백 주소 :: 이 글에는 트랙백을 보낼 수 없습니다