DBLink远程连接数据库和连接池无关吗?DBLink有很多问题
1个回答
展开全部
【现象】
应用使用数据库连接池,访问A库时通过dblink查询B库,应用时不时会报错ORA-02068和ORA-0313。
【过程还原】
当应用获取了一个数据库连接,并在数据库连接中使用了dblink,如果应用到A库的连接不释放,则A库到B库的dblink 连接也不释放;当A库到B库的dblink连接由于长时间无数据被防火墙设备断开后,如果应用再次从连接池中获取这个连接,并要使用dblink查询时,则oracle就会报错。
【根本原因】
oracle替你保存了dblink连接,当你再使用时,没有检查就直接使用,则可能导致报错。
【可行的解决方案】
1. 升级oracle到11g,高版本oracle可以保证dblink使用时都是ok的;
2. 应用访问数据库的代码中,查询完毕后,显示关闭dblink;
3. 取消A库到B库的超时断开机制,这方法不保险,因为长时间的网络连接可能还会被其他因素断开;
4. 配置应用连接池,每次提供连接时也要检查dblink是否可用。
应用使用数据库连接池,访问A库时通过dblink查询B库,应用时不时会报错ORA-02068和ORA-0313。
【过程还原】
当应用获取了一个数据库连接,并在数据库连接中使用了dblink,如果应用到A库的连接不释放,则A库到B库的dblink 连接也不释放;当A库到B库的dblink连接由于长时间无数据被防火墙设备断开后,如果应用再次从连接池中获取这个连接,并要使用dblink查询时,则oracle就会报错。
【根本原因】
oracle替你保存了dblink连接,当你再使用时,没有检查就直接使用,则可能导致报错。
【可行的解决方案】
1. 升级oracle到11g,高版本oracle可以保证dblink使用时都是ok的;
2. 应用访问数据库的代码中,查询完毕后,显示关闭dblink;
3. 取消A库到B库的超时断开机制,这方法不保险,因为长时间的网络连接可能还会被其他因素断开;
4. 配置应用连接池,每次提供连接时也要检查dblink是否可用。
光派通信
2024-09-03 广告
2024-09-03 广告
对光传输设备进行调试和维护,需要掌握以下关键点:1. **熟悉设备性能**:深入了解OTN/DWDM等光传输产品的性能特点,确保能够熟练使用设备。2. **按规范操作**:依据产品说明书和维护手册进行调试和维护,确保操作步骤正确无误。3. ...
点击进入详情页
本回答由光派通信提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询