오라클에서 커서를 공유한다는 뜻은 라이브러리 캐시의 공유커서를 말한다.
라이브러리에 공유되어 있는 커서의 수행 통계를 v$sql 을 통해 조회해 볼수 있다.
v$sql 을 조회하면서 실제 공유된 커서가 재사용 되는지 확인해보자.
라이브러리에 공유되어 있는 커서의 수행 통계를 v$sql 을 통해 조회해 볼수 있다.
v$sql 을 조회하면서 실제 공유된 커서가 재사용 되는지 확인해보자.
1. scott 유저로 접속한 후 shared_pool 영역을 비운다.
그리고 test를 쿼리에 주석으로 "cursor_test" 를 넣은후 쿼리를 실행하자.
그리고 test를 쿼리에 주석으로 "cursor_test" 를 넣은후 쿼리를 실행하자.
2. v$sql을 통해 shared_pool 영역에 공유되었는지 확인하자.
3. 처음 실행시킨 쿼리를 3번 더 반복 실행하여 보자.
4. v$sql을 조회하여 공유커서가 재사용 되었는지 확인해보자.
위에서 보듯이 커서가 반복되어 재사용 되어진것을 확인할수 있다.
조회한 항목들에 대해 의미를 설명하자면...
PARSE_CALLS : 라이브러리 캐시에서 SQL 커서를 찾으려는 요청 횟수
LOADS : 하드파싱을 거친 SQL 실행계획을 라이브러리 캐시에 적재한 횟수
EXECUTIONS : SQL 을 수행한 횟수
INVALIDATIONS : 커서가 무효화된 횟수. 커서가 참조하고 있는 오브젝트에
중요한 변화가 일어났음을 의미함.
위에서 보듯이 커서가 반복되어 재사용 되어진것을 확인할수 있다.
조회한 항목들에 대해 의미를 설명하자면...
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 |