我有一个写得很糟糕的遗留 .NET 应用程序,如果它检测到连接已被删除,它会与数据库保持持续联系,并抛出“无连接”屏幕。
运行此程序的所有机器都配置相同,但在其中两台机器上,我们最近刚开始遇到一个问题,无论是否有连接,都会出现无连接屏幕,并且在计算机本身重新启动之前不会检测到连接。
查看错误日志,罪魁祸首似乎是
ORA-12560: TNS:protocol adapter error
但什么可能导致这种情况?特别是因为直到几周前才发生这种情况。
很可能,机器无法解析条目中提供的名称,或访问条目中DNS
提供的服务器。HOST
tnsnames.ora
HOST
如果连接在超时时断开(就像底层TCP
流在超时时断开一样),它也会失败并显示此消息。
如果您使用tnsnames.ora
onOracle 10g
或更高版本,请尝试使用Easy Connect
format ( //servername/servicename
) 代替。
不确定,但是当网络发生不良情况时,这就是您所得到的。
一个常见的特殊情况是防火墙或其他关闭空闲连接的网络小工具。
在我们的 C:\Oracle 目录中,一些文件被压缩(蓝色)。一旦我们解压缩文件,我们的问题就消失了。