본문 바로가기

Error

[오라클Error] ORA-01652: 128(으)로 테이블 공간 TEMP에서 임시 세그먼트를 확장할 수 없습니다

728x90

1. 오라클 에러 ORA-01652

ORA-01652: 128(으)로 테이블 공간 TEMP에서 임시 세그먼트를 확장할 수 없습니다.

 

 

2. 원인

1) TEMP 테이블스페이스의 용량 부족

많은 양의 데이터가 들어있는 테이블을 조회했을 때 발생한다. 즉 데이터파일의 사이즈가 작은 경우. 아래 조회 결과로 테이블스페이스 용량을 확인할 수 있다.

SELECT * FROM DBA_TEMP_FILES
WHERE TABLESPACE_NAME='TEMP';

 

 

2) TEMP 테이블스페이스 max extents에 도달한 경우

아래 조회 결과로 테이블스페이스 max값을 확인할 수 있다.

SELECT MAX(blocks), MAX(bytes) FROM DBA_FREE_SPACE
WHERE TABLESPACE_NAME = 'TEMP';

 

현재 할당된 크기 확인

 SELECT * FROM v$sort_segment;

 

3. 해결방법

해당하는 테이블스페이스의 용량을 늘려준다. 아래 방법 중 1개 선택

ALTER TABLESPACE TEMP ADD TEMPFILE '/ORADATA/ORCL/TEMP01.DBF' SIZE 100M;
ALTER DATABASE TEMPFILE '/ORADATA/TEMP01.DBF' AUTOEXTENT ON;
ALTER DATABASE TEMPFILE ''/ORADATA/TEMP01.DBF'' RESIZE 100M;