1.先把三思的动态性能视图学完
今天看到了V$sysstat和V$sesstat里面的一个统计项:open cursor current和session cursor cache count想了解一下这个和V$open_cursor和session_cached_cursor;当我们执行一条 sql语句的时候,我们将会在shared pool产生一个library cache object,cursor就是其中针对于sql语句的一种library cache object.另外我们会在pga有一个cursor的拷贝,同时在客户端会有一个statement handle,这些都被称为cursor,在v$open_cursor里面我们可以看到当前打开的cursor和pga内cached cursor.
session_cached_cursor
这个参数限制了在pga内session cursor cache list的长度,session cursor cache list是一条双向的lru链表,当一个session打算关闭一个cursor时,如果这个cursor的parse count超过3次,那么这个cursor将会被加到session cursor cache list的MRU端.当一个session打算parse一个sql时,它会先去pga内搜索session cursor cache list,如果找到那么会把这个cursor脱离list,然后当关闭的时候再把这个cursor加到MRU 端.session_cached_cursor提供了快速软分析的功能,提供了比soft parse更高的性能.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7928987/viewspace-410767/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7928987/viewspace-410767/