Oracle数据库TNS-12547,TNS-12537错误解决方法一例
Oracle数据库TNS-12547,TNS-12537错误解决方法一例
装linux redhat as 4 update 4 64位操作系统后,并且安装完oracle 数据库
,补丁也已经升级到10.2.04. 客户端访问不了 TNS-12547: TNS:丢失连接错误,linux上的防火墙也已经关闭
以为是还有哪个包没安装齐全,然后就打掉操作系统重新安装操作系统和数据库,装好后
客户端还是访问不了 报TNS-12537: TNS:连接关闭错误,监听日志报TNS-12525: TNS: 监听程序在允许时间内未接收到客户机请求
可以说还是同样错误,想了很多方法去试,还是不行
最后在metalink上查到一篇文章,说可能还是防火墙问题
New Connections Intermittently Rejected with TNS-12525
Applies to:
Oracle Net Services - Version: 10.2.0.1.0 to 11.1.0.6.0
This problem can occur on any platform.
Symptoms
At regular intervals (every three hours), you see new connections rejected with TNS-12525 "listener has not received client's request in time allowed".
The listener log shows the following error stack :
10-APR-2008 17:39:15 *
TNS-12525: TNS:listener has not received client's request in time allowed
TNS-12535: TNS:operation timed out
TNS-12606: TNS: Application timeout occurred
At the same time the firewall log reports :
"TCP packet out of state: First packet isn't SYN; tcp_flags: PUSH-ACK"
Wireshark (Ethereal) traces show the TCP 3-way handshake never completes for those connections.
Changes
Value of idle timer was recently changed at firewall level.
Cause
Firewall closes ports not allowing the 3-way handshake to complete at TCP level.
Solution
Increase the firewall's idle timeout interval.
可能还是公司防火墙问题,所以就找了单独一台交换机,就接服务器和我自己电脑做测试,
测试ok ,这个问题搞了几天了,刚开始想到是防火墙问题,只想到linux自身上的防火墙,没想到
公司自己网络防火墙问题,差点就放弃了,不过还是贵在坚持,查资料,寻求帮助等,终于解决了