ora-01000:超出打开游标的最大数
来源:百度文库 编辑:神马文学网 时间:2024/04/29 19:43:14
最近在项目中用到了apache的common-dbcp框架,在spring的配置文件中,加入了dataSource的配置,如下:
Xml代码id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> -
name="driverClassName" value="${jdbc.driverClassName}" /> -
name="url" value="${jdbc.url}" /> -
name="username" value="${jdbc.username}" /> -
name="password" value="${jdbc.password}" /> -
name="initialSize" value="5" /> -
name="maxActive" value="100" /> -
name="maxIdle" value="30" /> -
name="maxWait" value="1000" /> -
name="poolPreparedStatements" value="true" /> -
name="defaultAutoCommit" value="true" />
测试,没问题。但是,在商用环境上,突然发现,经过一段时间的数据库操作,数据库连接的游标用尽,报出maximum open cursors exceeded, 排查了很久,代码里面没有未关连接的情况(因为用的是spring的jdbc模板),也没有使用任何存储过程。在万般无奈下,最后查看了配置文件,突然发现
Xml代码name="poolPreparedStatements" value="true" />
这个配置以前没使用过(注:因为这个配置是从网上down下来的)。查看了common-dbcp的api,原来这个地方把每个connection用到的preparedStatement都缓存到池中了(具体实现机制还没看源代码,我猜想是这样),最后导致preparedStatement未释放,游标也就一直没释放,到游标最大数直接报错。
最后,把poolPreparedStatements设置为false后,问题解决。
ora-01000:超出打开游标的最大数
BlogJava - 天道酬勤 - 关于ORACLE游标的问题(ORA-01000: maximum open cursors exceeded)
彻底解决远程win2003超出最大连数的问题
sql server 游标的使用
存储过程游标的使用
中国政府管理成本超出西方国家数倍
对孩子伤害最大的5句父母之言 -ora
查找一组数中最大的两个数
网站的最大并发连接数
更改windows2003最大连接数的方法
唐僧的谋略ora
中国传统文化的弊端ora
[精华] [原创]PL/SQL的SELECT FOR UPDATE游标
做人的智慧 (上集)ora
挂在嘴边的生殖器ora
犹太人浓缩的智慧ora
做人的十全基本点ora
4最大像素数
4最大像素数
最新半年报股东数减幅最大的公司一览
【Earls】印度最大的性庙:打开性爱雕像之谜(图)
超出视野的的美图
建国初 我国超出国力的对外援助
中国的公共债务压力超出预期