본문 바로가기

Oracle/admin

커서 공유

오라클에서 커서를 공유한다는 뜻은 라이브러리 캐시의 공유커서를 말한다.

라이브러리에 공유되어 있는 커서의 수행 통계를 v$sql 을 통해 조회해 볼수 있다.

v$sql 을 조회하면서 실제 공유된 커서가 재사용 되는지 확인해보자.



 

1. scott 유저로 접속한 후 shared_pool 영역을 비운다.
    그리고 test를 쿼리에 주석으로 "cursor_test" 를 넣은후 쿼리를 실행하자. 



 

2. v$sql을 통해 shared_pool 영역에 공유되었는지 확인하자.



 

3. 처음 실행시킨 쿼리를 3번 더 반복 실행하여 보자.




 

4. v$sql을 조회하여 공유커서가 재사용 되었는지 확인해보자.


위에서 보듯이 커서가 반복되어 재사용 되어진것을 확인할수 있다.
조회한 항목들에 대해 의미를 설명하자면...
PARSE_CALLS : 라이브러리 캐시에서 SQL 커서를 찾으려는 요청 횟수
LOADS : 하드파싱을 거친 SQL 실행계획을 라이브러리 캐시에 적재한 횟수
EXECUTIONS : SQL 을 수행한 횟수
INVALIDATIONS : 커서가 무효화된 횟수. 커서가 참조하고 있는 오브젝트에
                        중요한 변화가 일어났음을 의미함.


 

5. 이제 다른 세션에서도 커서를 공유하는지 test 해보자

=>다른세션에서도 해당 커서를 공유하여 사용한것을 확인할수 있다.


 

'Oracle > admin' 카테고리의 다른 글

Tuning 참고  (0) 2015.09.14
M view  (0) 2015.09.14
VIEW 생성,VIEW 조회 권한 부여,SYNONYM 생성  (0) 2015.09.14
v$lock 뷰의 LMODE에 대해..  (0) 2015.09.14
Datafile rename  (0) 2015.09.14