에러 메시지
ora-30036 : unable to extend segment by 4 in undo tablespace
원인
rollback할 데이터를 저장하는 undo tablespace가 부족해서 생기는 에러
주로 많은 양의 데이터를 update, insert, delete 할 때 발생
해결방법
1. undo tablespace를 확장
alter tablespace <undotablespace 이름> add datafile <'경로'> size <추가할 용량> <m | k>;
예시)
1 | alter tablespace UNDOTBS1 add datafile 'C:/oraclexe/app/oracle/oradata/XE/UNDOTBS5.DBF' size 10m; | cs |
이 방법은 기존에 있는 undo tablespace의 용량을 확장하는 방법이다.
이 방법 외에 용량이 큰 새로운 undo tablespace를 만드는 방법도 있다.
2. 쿼리문의 로직을 작은 단위로 잘라서 실행
이 오류는 update, delete, insert를 통해 한 번에 실행되는 데이터 양이 많아서 undotablesapce가 모자라기 때문에 발생하는 것이다.
이를 해결하기 위해 쿼리를 작은 단위로 나누어서 실행해주고 commit을 해주면 된다.
'Error note' 카테고리의 다른 글
[Mysql]Error code 1175 (0) | 2017.01.02 |
---|---|
[Spring]org.springframework.dao: Incorrect result size: expected 1, actual 0 EmptyResultDataAccessException (0) | 2016.12.22 |