Azure混合连接管理器不起作用

时间:2017-10-19 05:41:48

标签: azure connection hybrid

要求

我有一个内部部署 SQL Server 和一个 Azure webApp服务,需要相互交谈。我在另一台与SQL服务器位于同一LAN的计算机上安装了Hybrid Connection Manager。我们将此计算机称为连接PC

工作部分

  • 安装和配置很简单,混合连接的状态显示为已连接。
  • 在localhost上测试了WebApp,它运行正常。这意味着asp.net代码没有错误
  • 连接PC上的SSMS可以访问和查询SQL DB
  • 我在连接PC上安装了测试SQL数据库,并使用WebApp与测试数据库进行通信,但工作正常。

问题

在localhost上测试好后,我将ASP.Net WebApp发布到Azure,它给出了以下错误:

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

排查尝试

  • 这是否意味着必须在运行SQL Server的同一台计算机上安装Hybrid Connection Manager?
  • 我确实尝试在SQL Server上安装HCM,但它说它无法与Win2008R2一起使用。连接PC上有win2012。所以它可以有HCM。 我没有时间将SQL Server迁移到另一台服务器。所以我希望HCM不必在SQL服务器上。

连接字符串

在我的webapp中,连接字符串如下所示。

的connectionString ="元数据= RES:// /ScaleDataModel.csdl|res:// /ScaleDataModel.ssdl|res://*/ScaleDataModel.msl;provider=System。 Data.SqlClient; provider connection string =" data source = WIN2008R2 \ DataPlus; initial catalog = DataPlus; persist security info = True; user id = test; password = testpass; multipleactiveresultsets = True; application name = EntityFramework" "的providerName =" System.Data.EntityClient"

1 个答案:

答案 0 :(得分:0)

由于您具有混合连接,因此您的连接字符串应具有混合连接的端点名称作为数据源。尝试更换它。