间歇性SQL Server连接失败

时间:2018-04-19 12:52:08

标签: c# sql-server

因此,我们会间歇性地收到这些错误。

  

建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)

注意那里有关命名管道提供者的部分吗?

这是我的连接字符串:

var conStr = "Data Source=tcp:MyServer;Initial Catalog=MyDatabase;User ID=myusername;Password=myuserpassword;Max Pool Size=100;MultipleActiveResultSets=True;Connect Timeout=120;";

在我的连接字符串中,您会注意到我指定了TCP。所以这个错误信息对我来说很疯狂。我不能以任何可靠的方式复制它,但是,它每天,每天都会发生。事件日志中没有任何内容,sql server日志,周围的应用程序日志,什么都没有。此外,当它发生时,来自整个企业的各种其他应用程序/服务器至少有2k个其他连接没有这个问题,直到他们这样做。

我应该补充一点,这些都是生活在VSphere集群内的虚拟机,所有主机之间都有40Gbps的连接。

我已经在谷歌搜索结果中读了3页深的每一页(是的,我整整了3页)。我输了。

  1. 例外意味着什么?
  2. 为什么说它使用Named Pipers Provider?
  3. 按要求:

    static void Main(string[] args)
            {
                var conStr = "Data Source=tcp:MyServer;Initial Catalog=MyDatabase;User ID=myusername;Password=myuserpassword;Max Pool Size=100;MultipleActiveResultSets=True;Connect Timeout=120;";
                using (var con = new SqlConnection(conStr))
                {
                    con.Open();
                }
            }
    

0 个答案:

没有答案