Azure App服务无需内部连接即可在内部连接到SQL Server

时间:2019-08-26 09:15:19

标签: c# web azure-web-sites windows2012

我有一个Web API部署到Azure服务应用程序(2个节点)。我想连接到本地SQL Server 2016数据库。

我收到消息:

  

无法连接到数据库

我禁用了内部SQL Server上的防火墙(以进行测试),但是它仍然无法正常工作。

我可以在PC上通过ipnr连接到运行SQL Server的PC上运行的应用程序,但是如果我将其发布到Azure(我在Azure中检查了web.config,它看起来不错)就不能了。我正在使用ipnr(在连接字符串中)进行连接。

  • .NET Framework 4.5.2
  • 实体框架4.6.3

它已经可以使用混合连接,但是仅限于25个连接,在我的情况下,该应用程序将由许多并发用户(例如200个用户)使用,因此我不希望使用混合连接。我想要基于ipnr和防火墙设置的直接连接。或其他解决方案。

混合连接有效,但仅限于25个连接。我有更多的并发用户。

它必须与本地SQL Server数据库连接。

1 个答案:

答案 0 :(得分:0)

您可能正在尝试连接到Azure无法连接到的内部IP地址。由于它是内部的。因此仅在内部可用。

将内部SQL Server公开到Internet不仅会禁用服务器上的防火墙,这通常是一种不好的做法。您还需要处理其他事情,例如端口转发。

我认为您最好的解决方案是创建一个Azure Virtual Network并通过它连接到本地数据库。

顺便
并发用户数不一定表示连接数。您可能有一个应用程序连接到数据库,而不是 user ,对吧?