0

我正在尝试通过网络连接到 biztalk 实例,但并没有那么成功。带有 biztalk 数据库的 SQL 服务器已禁用命名管道。当我尝试连接到安装了 biztalk 的服务器时,它给出了一个命名管道错误。当我尝试连接到数据库服务器时,它只是超时并给出了一个几乎涵盖了阳光下所有场景的错误(基本上它无法连接,它不知道为什么)

如果我尝试连接 SQL Server Management Studio,它就可以工作。如果我尝试制作 dsn,它可以工作。如果我尝试通过 biztalk,它就会死掉。如果我尝试使用 tcp: 前缀通过 biztalk,它就会死掉。如果我在另外两个上强制命名管道,它就会死掉。

从连接到现有组对话框中是否有任何方法可以强制使用 TCP/IP 作为传输?

4

4 回答 4

1

您是否在系统或应用程序日志中收到任何错误消息?

您可能需要检查一些形状 - 端口等,因为可能有

http://www.biztalkserverguide.com/2008/02/04/biztalk-server-throwing-named-pipes-error-40-could-not-open-a-connection-to-sql-server/

声明了一个名为 btsConnString(字符串)的变量,该变量未设置为连接字符串,它是空白的(错误地),事情按预期工作,没有问题。在舞台上由于未为 btsConnString 分配连接字符串,因此引发了错误

还要查看连接 DTC 测试的 MSDTC 问题http://support.microsoft.com/kb/293799 如果您可以在两台服务器上安装,请使用DTCPing

还请查看这些影响 Microsoft BizTalk Server 2006 的大多数 Microsoft SQL Server 问题属于以下类别之一:

于 2009-02-20T08:41:28.837 回答
1

我相信我最近有类似的事情 - BizTalk 会尝试使用命名管道连接到 SQL 框,原因不明,这会超时。我们使用注册表 (HKLM\SOFTWARE\Microsoft\MSSQLServer\Client\SuperSocketNetLib) 来强制它首先尝试 TCP(也是最后一个,我们没有指定任何其他协议),它似乎可以解决问题。

在此处查看详细信息

于 2009-02-20T11:46:37.940 回答
1

要强制 tcp,请尝试“tcp:servername”(或“tcp:servername\instancename,port”) 这可以在不使用 SQL 工具设置别名或默认协议的情况下完成

但是,您可能会收到错误的原因还有其他选择:

  • 命名管道错误可能会产生误导,通常只是表示“找不到服务器”
  • 防火墙等正在阻止对 SQL 实例的访问
  • ...或枚举实例/端口的 SQL 侦听器端口 1434
于 2009-02-13T05:32:17.657 回答
1

我知道这是一个非常古老的线程,但可以参考完全相同的问题。我最终在 SQL Server 配置管理器中为该实例创建了一个别名。您的别名将如下所示:Alias = Aliasname Value = Server\Instance. 然后将Aliasname作为您的数据源放入您的连接字符串中。在我看来,BizTalk 不理解\连接字符串中的反斜杠 ( )。它必须有一个单词。

于 2011-11-10T22:42:30.100 回答