본문 바로가기

IT관련

Oracle DB 권고 파라메타 (_cursor_obsolete_threshold=1024)

** 아래는 제 짧은 경험 및 지식과 Oracle MOS 문서등에서 얻은 지식을 기반으로 작성되었습니다. **

** 저는 Oracle Engineer 를 대표하는 사람이 아니니 참고하시고, 실제 적용하고자 하는 경우에는 좀더 알아보신후 본인 책임하에 확신이 선 경우에 하셔야 합니다. **

 

_cursor_obsolete_threshold 파라메타는 오라클 DB 내부에서 관리하는 커서들의 임계사이즈를 지정하는 파라메타입니다.

이 값이 Oracle 12.1 버전까지는 Default 로 1024 였다가 12.2 버전부터 8192 로 늘어났다고 합니다.

이게 Oracle Multi-tenant 기능 때문에 더많은 PDB 를 관리하기 위해서 늘린 것으로 멀티테넌트 기능을 사용하지 않는 경우는 예전처럼 1024 로 줄이는 게 좋다고 합니다.

간혹 이것때문에 SQL Parsing Time 이 길어지고, AWR 리포트에서 Library Cache Activity 부분에 SQL AREA "Reloads" 가 크게 늘어나는 경우가 발생합니다.

AWR 리포트의 SQL ordered by Version Count 섹션에 높은 버전카운트 SQL 들이 발견됩니다.

 

 

이런 현상이 발생하는 경우 _cursor_obsolete_threshold 히든파라메타 값을 1024 로 변경해주라고 합니다.

 

12.2 버전이하는 해당이 안되고, Oracle 12.2 부터 21c 까지 해당됩니다.

물론 멀티테넌트 옵션을 사용하는 경우에는 함부로 세팅하면 안되고, Oracle ACS 엔지니어의 도움이 필요하겠습니다.

 

참고한 오라클 도큐먼트는 Doc ID 2431353.1 문서입니다.