【发布时间】:2010-09-27 14:11:41
【问题描述】:
我们有一堆 VB6 应用程序可以访问两个不同的数据库服务器(都是 32 位 windows 2003,一个 SQL Server 2000,一个 SQL Server 2005)。大约每十分钟左右,我们就会收到一些错误:
[Microsoft][ODBC SQL Server 驱动程序]超时已过期 [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访问被拒绝。 [Microsoft][ODBC SQL Server 驱动程序]ConnectionRead()
这种情况随机发生在十几台不同的计算机上。我们也有 IP 电话,它们都通过同一个网络运行,并且没有任何问题。我们还可以将 VNC 导入用户计算机并重现他们遇到的错误,但 VNC 仍然可以继续工作。电子邮件也可以。它似乎只是导致问题的 SQL Server 的 ODBC 连接。我们的两个 SQL Server 都会发生错误。我们搜索了谷歌,但还没有找到解决方案。有什么我们可以尝试诊断问题的方法吗?有什么解决办法吗?
更新:
我们在服务器或客户端上都没有内部防火墙。我们通过服务器的 dns 名称通过 TCP/IP 连接(也尝试过 IP 地址)。
一台服务器装有 Windows 2003 SP2,另一台没有。
奇怪的是,它多年来一直运行良好,但现在突然发生了这些错误。很长一段时间以来,这些服务器上没有任何变化。这让我们相信这是一个糟糕的开关,但这似乎不太可能,因为没有其他任何东西(电子邮件、电话、vnc、文件服务器等)都可以正常工作。
【问题讨论】:
-
我在使用 ASP 和 SQL 时遇到了非常相似的问题。重新创建存储过程解决了它 - 请参阅我的答案:stackoverflow.com/questions/3095487/…
标签: sql-server vb6 odbc