日期:2014-05-17  浏览次数:20884 次

dblink连接不关闭问题
用的ssh,数据库是oracle,有一个方法查询了dblink,但是查询完后,连接一直没断开。导致连接数过多,最后无法连接,请问这是什么原因导致的呢?

------解决方案--------------------
这问题问的,自己连接数据库,为什么没有关,看看自己的数据库代码不就明白了。
------解决方案--------------------
自己创建的链接,还是用的连接池,连接池一般都会帮你关掉连接的。
------解决方案--------------------
不过如果使用dblink,我们需要及时显示的关闭dblink。以下提供两种方式
alter sesssion close database link <dblink_name>;
dbms_session.close_database_link(<dblink_name>);
------解决方案--------------------
引用:
用的声明式事务,自动提交事务的,我用的for update 能正常提交,但是dblink就一直占着连接在哪里,不提交也不回滚,这个怎么弄?

默认是自动提交的吧?是不是有定义过任何不自动提交的设置呢,或者有什么冲突,配置文件看看
------解决方案--------------------
嗯,注意,每次使用完对象后,就像文件流使用完后要关流一样,同样,db创建连接的对象也要关闭,不要让他占通道。