从Azure Web应用连接到Prem SQL Server

ume*_*ape 1 c# sql-server azure azure-hybrid-connections

我在最初有.Net应用程序。我想将其托管在Azure上,但不想移动数据库。我在Azure上发布了该应用程序,但无法连接到主数据库。

SQL Server在专用netwrok中。

出于POC目的,我正在使用MSDN订阅。我面临以下错误,

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

谢谢,乌梅什

Nan*_*ong 5

由于本地数据库位于私有本地网络中,因此Azure服务无法找到它,因此您可以公开本地数据库的公共IP或将Azure Web应用程序服务VNetAzure VPN网关集成以安全地访问Azure VNet或本地网络中的资源。

推荐的另一种方法是使用Azure App Service混合连接。为此,您需要在您的应用程序中添加和创建混合连接。您将在数据库服务器或与本地数据库位于同一网络的另一服务器中下载并安装代理(Hybrid Connection Manager)。

主要步骤如下:

  1. 您可以在应用程序服务或Web应用程序上配置逻辑连接。
  2. 将下载一个小型代理程序Hybrid Connection Manager,并将其安装在您需要与之通信的远程网络(本地或任何地方)中运行的Windows Server(2012或更高版本)上。
  3. 您在混合连接管理器中登录Azure订阅,然后在应用程序服务中选择逻辑连接。
  4. Hybrid Connection Manager将启动到您的Azure应用服务的安全隧道(TCP 80/443)。
  5. 您的应用程序服务现在可以通过Hybrid Connection Manager与Windows或Linux中远程网络中基于TCP的服务进行通信。

您可以获得有关如何将Azure Web Apps连接到本地的更多详细信息。

  • 您可以在另一台服务器而不是 sql server 中安装 HCM,并从 azure 应用程序服务配置混合连接端点主机--数据库主机名、端点端口--- 1433。你可以通过这些链接 [here](https://docs.microsoft.com/en-us/azure/app-service/app-service-hybrid-connections#add-and-create-hybrid-connections-in- your-app) 和 [here](https://blogs.msdn.microsoft.com/waws/2017/05/22/hybrid-connection-shows-connected-but-application-fails-to-connect/) 就像我一样之前提到过。 (2认同)