可能有什么问题:ping工作正常,但tnsping间歇性地工作

时间:2009-02-20 19:07:53

标签: oracle ora-12560

我们在Windows Server 2003上运行了oracle 10g。使用该数据库运行应用程序的计算机几周前突然开始出现连接问题。今天我们运行了Windows服务器的自动更新,问题变得更糟。我意识到这对于任何人都没有足够的信息来诊断问题,但也许你可以通过以下更具体的方案让我指出正确的方向:

从这台机器上我们可以毫无问题地对服务器执行ping操作,并且在物理上接近并在内部网上,返回速度非常快。

但是,当我们运行tnsping时,我已经在几分钟之内看到了3个不同的结果。

  1. tnsping在合理的时间内恢复正常
  2. tnsping返回但仅在真正的长时间(几秒钟)之后
  3. tnsping导致ora-12560协议适配器错误
  4. 与此同时,我可以毫无问题地从我的机器上取出服务器。

    有人能指出我正确的方向吗?

6 个答案:

答案 0 :(得分:1)

要帮助从等式中消除DNS问题,请在TNSNAMES.ora文件中为连接而不是主机名指定主机的IP地址。你在使用DHCP吗?

您是否已将硬件排除在问题之外 - 您是否尝试过其他NIC?

答案 1 :(得分:1)

我试着检查以下内容:

  • 从应用服务器和您的机器执行traceroute检查是否有异常
  • 检查来自各种其他机器的tnsping并尝试识别模式
  • 尝试使用tcp / ip嗅探器查看连接两端的内容
  • 获得oracle支持

答案 2 :(得分:1)

在调用Oracle之前,我会为Fail case创建一个跟踪文件。

TNSPING.TRACE_LEVEL

目的

使用参数TNSPING.TRACE_LEVEL打开TNSPING实用程序跟踪,在特定级别或关闭。

默认

值 * off:没有跟踪输出 * user:用于用户跟踪信息 * admin:用于管理跟踪信息 *支持:用于Oracle Support Services跟踪信息

实施例

TNSPING.TRACE_LEVEL =管理员

答案 3 :(得分:1)

在此问题涉及oracle之前,请从网络管理员处获取以下测试的帮助。首先在侦听器中启用详细数据库的详细日志记录。通过sqlnet启用客户端日志记录。转到有tnsping问题的机器,让网络管理员运行网络工具从那里跟踪tcp数据包。执行tnsping并查看是否正在发送什么数据包,正在进行什么dns查找,正在采取什么路由。在数据库上查看侦听器是否实际从客户端收到ping。如果没有,那么看看网络沿数据库的问题所在。它是名称服务器解析吗?它是一个糟糕的网络电缆,糟糕的交换机端口等。您的网络管理员是您解决此问题的最佳朋友。通过简单的连接通过sqlplus执行相同的测试,并查看客户端正在记录的内容。

答案 4 :(得分:0)

确保网络上没有其他具有相同IP地址的计算机。一种方法是将您的计算机从网络中拔出,看看您是否仍然可以ping它。如果可以,那就是问题所在。

答案 5 :(得分:0)

如果服务器在dns服务器上没有域名设置,则将其IP地址和名称添加到服务器上的主机文件中;这已知(服务器无法在dns中找到自己)已导致tns超时。