ORA-03135 防火墙超时设置断开db link 连接

【现象】
应用使用数据库连接池,访问A库时通过dblink查询B库,应用时不时会报错ORA-02068和ORA-03135。
【过程还原】
当应用获取了一个数据库连接,并在数据库连接中使用了dblink,如果应用到A库的连接不释放,则A库到B库的dblink 连接也不释放;当A库到B库的dblink连接由于长时间无数据被防火墙设备断开后,如果应用再次从连接池中获取这个连接,并要使用dblink查询时,则oracle就会报错。
【根本原因】
oracle替你保存了dblink连接,当你再使用时,没有检查就直接使用,则可能导致报错。
【可行的解决方案】
1. 升级oracle到11g,高版本oracle可以保证dblink使用时都是ok的;
2. 应用访问数据库的代码中,查询完毕后,显示关闭dblink;
         alter session close database link <db_link_name>;
3. 取消A库到B库的超时断开机制,这方法不保险,因为长时间的网络连接可能还会被其他因素断开;
4. 配置应用连接池,每次提供连接时也要检查dblink是否可用。

转载于:https://www.cnblogs.com/seven-dba/p/4354874.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值