参数session_cached_cursors的详细解释

原创 2007年09月17日 14:48:00

SESSION_CACHED_CURSORS,就是说的是一个session可以缓存多少个cursor,让后续相同的SQL语句不再打开游标,从而避免软解析的过程来提高性能。(绑定变量是解决硬解析的问题),软解析同硬解析一样,比较消耗资源.所以这个参数非常重要

oracle有一个概念,那就是session cursor cache,中文描述就是有一块内存区域,用来存储关闭了的cursor。当一个cursor关闭之后,oracle会检查这个cursor的request次数是否超过3次,如果超过了三次,就会放入session cursor cache,这样在下次parse的时候,就可以从session cursor cache中找到这个statement, session cursor cache的管理也是使用LRU。
session_cached_cursors这个参数是控制session cursor cache的大小的。session_cached_cursors定义了session cursor cache中存储的cursor的个数。这个值越大,则会消耗的内存越多。
另外检查这个参数是否设置的合理,可以从两个statistic来检查。

SQL> select name,value from v$sysstat where name like '%cursor%';

NAME                                                                  VALUE
---------------------------------------------------------------- ----------
opened cursors cumulative                                             16439
opened cursors current                                                   55
session cursor cache hits                                              8944
session cursor cache count                                              101
cursor authentications                                                  353

SQL> select name,value from v$sysstat where name like '%parse%';

NAME                                                                  VALUE
---------------------------------------------------------------- ----------
parse time cpu                                                            0
parse time elapsed                                                        0
parse count (total)                                                   17211
parse count (hard)                                                     1128
parse count (failures)                                                    2

session cursor cache hits 和parse count(total) 就是总的parse次数中,在session cursor cache中找到的次数,所占比例越高,性能越好。如果比例比较低,并且有剩余内存的话,可以考虑加大该参数。

Oracle 9i及以前,该参数缺省是0,10G上缺省是20。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

oracle参数open_cursors和session_cached_cursor详解!

SQL> show parameter open_cursors --每个session(会话)最多能同时打开多少个cursor(游标) NAME ...

共享池之九:绑定变量与session_cached_cursors

解析分为硬解析和软解析和软软解析,SQL语句第一次解析时必须进行硬解析 还有一种是结果集缓存—无解析,详见:。   一句话说明硬解析与软解析的区别是: 硬解析=需要生成执行计划   软解析=不需要生成...

关于open_cursors和session_cached_cursors的参数值

http://blog.csdn.net/pilearn/article/details/7012599 一、如何正确设置session_cached_cursors参数: 正确设置o...

关于open_cursors和session_cached_cursors的参数值

一、如何正确设置session_cached_cursors参数: 正确设置open_cursors和session_cached_cursors 可以减少sql解析,提高系统性能,那么,如何正确设...
  • pilearn
  • pilearn
  • 2011年11月25日 16:25
  • 6846

SESSION_CACHED_CURSORS参数对性能的意义

SESSION_CACHED_CURSORS参数对性能的意义 SESSION_CACHED_CURSORS,就是说的是一个session可以缓存多少个cursor,让后续相同的SQL语句不再打开游标...
  • jlhnxly
  • jlhnxly
  • 2013年02月17日 13:15
  • 886

SESSION_CACHED_CURSORS参数配置

SESSION_CACHED_CURSORS,就是说的是一个session可以缓存多少个cursor,让后续相同的SQL语句不再打开游标,从而避免软解析的过程来提高性能。(绑定变量是解决硬解析的问题)...

oracle参数open_cursors和session_cached_cursor详解

SQL> show parameter open_cursors --每个session(会话)最多能同时打开多少个cursor(游标) NAME ...

session_cached_cursors与open_cursors

open_cursors 参数控制单个session 打开的cursor的数量。 v$open_cursor 是所有session(打开的cursor)的总和。 session_cached_cu...

Monitoring Open and Cached Cursors

http://www.orafaq.com/node/758 Monitoring Open and Cached Cursors Submitted by Natalka Rosha...
  • loryliu
  • loryliu
  • 2015年01月05日 22:07
  • 345

『ORACLE』session_cached_cursor了解硬解析、软解析(11g)

用示例演示一次硬分析(hard parse)和一次软分析(soft  parse),以及一次更软的分析(softer soft parse),并对给出演示结果。 SYS@ORA11GR2>show ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:参数session_cached_cursors的详细解释
举报原因:
原因补充:

(最多只允许输入30个字)