My Oracle Support Banner

시간에 따른 Temporary Segment 사용량을 모니터링하는 방법? (Doc ID 2145614.1)

Last updated on AUGUST 04, 2018

적용 대상:

Oracle Database - Enterprise Edition - 버전 8.1.7.0 과(와) 그 후속
이 문서의 내용은 모든 플랫폼에 적용됩니다.
Reviewed for relevance on 25 April 2012
*** Checked for relevance on 12-Apr-2016 ***


목적

시간에 따른 temporary segment 사용량 모니터링 방법 제시

이러한 과정은 분석 시 크게 도움이 될 것입니다.

ORA-1652 "unable to extend temp segment by %s in tablespace %s"



    90GB temporary tablespace를 가지고 있다고 가정합시다 (이 예에서는 하나의 temp tablespace만)
     ALTER SYSTEM SET EVENTS '1652 TRACE NAME ERRORSTACK LEVEL 3';를 통해 error 1652를 위한 tracing을 또한 enable합니다

       1번 ... 길고 ... 복잡한 query를 run
          몇 시간 후에 ... 85GB의 공간을 사용했고 ... 그리고 오랫동안 계속 run할 것입니다

        2번 (1번 + 몇 시간) 다른 query가 run하고 빠르게 5GB 공간을 사용하고  ... 그리고 ORA-1652가 발생합니다.
           이 session은 crash되고 5GB 공간을 반환합니다 ... 이것은 더 많은 temp space (즉 새로운 extent)를 필요로하지 않는다면 정확히 같은 순간에 1번에서 시작한 query 또는 다른 query가 fail되게 하지는 않을 것입니다

           이 시점에 .. 1652를 위한 errorstack은 많은 temp space 사용하지 않은 2번에서 시작한 query와 1번에서 시작한 query를 보여줄 것입니다

       3번 ... 이 note는 시간이 시간에 따른 temp segment 사용량을 보여주는 모니터링 job을 설정하기위해 사용됩니다 ...
             첫번째 85GB의 공간을 사용하는 1번에서 run하고 있는 query를 보여줄 것입니다


            자 .. job을 설정하는 동안 1번 query가 끝나서 85GB의 공간을 free하는 것을 가정합시다

       4번 .. 85GB의 공간을 사용하는 같은 query를 다시 run합니다

       5번 .. temp 공간 사용량을 모니터링할 job 설정을 run ... 그리고 4번 query가 5GB의 temp 공간을 사용하고 있는 것을 봅니다

       6번 .. temp 공간 사용량을 모니터링할 job 설정을 run ... 그리고 4번 query가 50GB의 temp 공간을 사용하고 있는 것을 봅니다

       7번 .. temp 공간 사용량을 모니터링할 job 설정을 run ... 그리고 4번 query가 85GB의 temp 공간을 사용하고 있는 것을 봅니다

       8번 ... 남아있는 5GB 공간을 빠르게 사용하는 다른 query를 시작 ... 그리고 결과적으로 .. ORA-1652 발생

             다시 .. errorstack trace는 4번에서 시작한 query가 아닌 이 query를 가르킬 것입니다

             run하고 있는 job은 ... 85GB의 공간을 사용한 session을 보여줄 것입니다

일단 공간의 'top consumer'가 결정되면 .. 해당 query는 공간을 덜 사용할 수 있도록 가능한 튜닝에 대해 분석될 수 있고 ... 그리고 튜닝 될 수 없다면 공간이 부족하지 않도록 더 많은 공간을 temporary tablespace에 추가될 필요가 있을 것입니다. 

해결책

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


이 문서에서
목적
해결책
참고

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.