Oralce 远程JDBC无法连接,自带Sql plus 可以正常访问,sql developer无法连接

        出现的问题: Oracle 11g 数据库突然无法访问,通过web应用 或 Oracle自带的 SQL developer 工具也无法连接,然而Oracle自带的Sql plus 却能成功连接访问数据。

        在用SQL develper 工具连接时直接提示访问连接失败:java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection  错误编码17002 code。

       

        同时发现 tnsping 值非常大 。如下图:

 

        解决:

            从以上错误信息可以判断出可能是以下几个问题:

            1. 数据库监听肯定出现异常 ,因为Sql plus 和Sql develper 的访问机制是不一样的,前者是直接访问数据库数据,而后者是通过

                   监听找到相应端口进行访问的。

                    通常有时我们会发现,监听的服务我们是能正常启动,给人的感觉监听没有任何异常。但是我需要告诉你

            不要被这种假象迷惑了你判断力。 监听出现异常并不是表示说监听不能启动,有可能是监听无法响应,或自身运行不良。

           监听本身这个服务可能是没有问题的。那说明监听可能因为其他因素导致不正常工作。

                     另外,监听日志文件大小如果大于4G后,也会导致监听运行异常。无法访问数据的现象。

                     D:\app\diag\tnslsnr\administrator\listener\trace目录下的listener.log

                      我本次遇到的问题就是这个文件已经4G多了,就导致我的应用突然无法访问数据库了。

                     可以通过在listener.ora 文件中配置 LOGGING_LISTENER = OFF 关闭监听日志的记录

            2. IP地址和主机名的映射关系配置不正确  这个主要看 host文件了

            3. Oracle 数据库所在的服务器和PC 的DNS解析有问题。

                 如果这台服务器存在多个地址,那么监听会根据DNS的解析情况进行访问,如果监听拿到的第一个IP地址的DNS有问题,那么

                只有在请求超时后,才会去尝试下一个IP的DNS解析请求。这样就会让你的连接请求等待很久 甚至超时。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天使马克

写博客不易,客观打赏一下吧!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值