偶发性异常:“在建立到 SQL Server 的连接时出现了与网络相关或特定于实例的错误”

6
偶尔我们的Web应用程序会抛出以下异常:
System.Data.SqlClient.SqlException (0x80131904): 当建立到SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问。请检查实例名称是否正确以及SQL Server是否配置为允许远程连接。(提供程序: Named Pipes Provider,错误: 40 - 无法打开到 SQL Server 的连接) ---> System.ComponentModel.Win32Exception (0x80004005): 找不到网络路径
我已经谷歌了关于此错误的各种变化,但是所有的都指向以下事实:目标SQL服务器要么已关闭,要么不接受远程连接,或连接字符串有问题。
但我的情况不同,我肯定可以访问SQL Server(单独的机器,同一个局域网),并且该应用程序大多数时候正常运行,但在某些情况下,它开始生成这些错误。然后,显然它们自己停止了,然后随机地再次开始。同一时间段内,同一服务器上的其他应用程序也向同一SQL服务器(虽然是不同的数据库)抛出这些错误。
我在两个服务器之间保持了不间断的ping,并且我可以确认在此期间它们之间具有IP连接性。
这个问题的原因是什么?我下一步该检查什么?

通过名称还是IP进行ping? - paul
通过IP地址进行ping操作。连接字符串也是通过IP地址。 - Christopher Demicoli
1
你有在这里检查答案吗?https://dev59.com/4kbRa4cB1Zd3GeqPxzDW - rogerdeuce
我没有!我不知道我的Google-Fu技能怎么会失败了。那里有一些想法我还没有检查过。感谢提供链接。 - Christopher Demicoli
1
你找到解决方法了吗,@ChristopherDemicoli? - Bruno
@ChristopherDemicoli 我也遇到了从同一台机器连接到 Azure 托管的 SQL Server 的问题。你是在本地 MSSQL 还是 Azure 托管上遇到这个问题? - gandra404
1个回答

2
你是否确认在SQL Server配置管理器->SQL Server网络配置->协议下启用了TCP/IP?

2
是的,TCP/IP已启用并且几乎99%的时间都可以正常工作。只是有时候,应用程序会突然抛出这个异常。 - Christopher Demicoli
1
我目前遇到了这个问题,为客户维护一个老旧的ASP.NET网站,它连接到一个Azure SQL服务器(很可能是一个集群/负载均衡),但是偶尔会出现以下错误:"[SqlException (0x80131904): A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible." - Trevor

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接