【问题标题】:Connecting existing asp.net application to azure sql server vm without SDK在没有 SDK 的情况下将现有的 asp.net 应用程序连接到 azure sql server vm
【发布时间】:2013-09-10 20:08:39
【问题描述】:

我需要将现有的 Asp.NET 应用程序移动到 Azure,在那里我还设置了一个托管 sql server 的虚拟机。现在,我显然不想一直部署,而且我什至还没有配置 Azure 以使应用程序存在于其中。我只想确保我可以让应用程序连接到虚拟机上的 sql server 实例。

谈到 Azure,我完全是新手。所以我完全不知道自己在做什么,但我正在使用教程和优秀的 Google 来尝试解决所有问题。

我的 web.config 中的连接字符串按照this tutorial 中列出的方式格式化,如下所示:

<add name="AzureSqlServer" connectionString="Data Source=tcp:[internal-IP];
 Initial Catalog=TestDb;User ID=[sql-user];Password=[sql-pass];Encrypt=true;
 Trusted_Connection=false;TrustServerCertificate=true"
 providerName="System.Data.SqlClient" />

这不会自行连接,所以显然我还有其他事情要做。现在,本教程遵循本节的几个步骤,这些步骤都需要安装 Azure SDK,包括设置 Web 角色以连接到带有 SQL Server 的 Azure 托管的 VM。这一切都很好,花花公子,但有一点小事没有说明:

事实证明,Azure SDK 仅与 Windows Vista 及更高版本兼容。所以,我可以做一个Win7的虚拟机,但是要多花几天时间。

除了使用 Azure SDK 之外,还有其他方法可以将 Asp.NET Web 应用程序连接到 Azure 托管的 SQL Server 虚拟机吗?

【问题讨论】:

  • 最好将您的肥皂盒评论留给自己。这是用于编程问答。

标签: asp.net azure azure-web-roles azure-virtual-machine azure-sdk-.net


【解决方案1】:

您提到对 Azure 一无所知,因此查看www.windowsazure.com 的教程是一个很好的起点,尤其是当您尝试将生产应用程序启动到您知之甚少的环境中时。

话虽如此:如果您的 SQL Server 在 VM 中运行,并且该 VM 是与您的 asp.net 应用程序不同的部署的一部分(例如,您使用了类似 Web 角色的东西,或者Azure 网站),您不能使用您的 SQL Server 的内部 IP 地址,因为您无法访问该 IP 地址(每个部署都位于其自己的专用网络中)。您的选择是:

  • 如果您将网站部署到 Azure 网站,您将通过其公共端点访问您的 SQL Server VM(您需要创建该端点,称为 输入端点,端口为 1433打开)。所以应该是你的 sqldeployment.cloudapp.net:1433。
  • 如果您部署到具有 Web 角色 (yourwebapp.cloudapp.net) 的云服务,您可以执行与网站相同的操作,或者您可以在云服务和 SQL Server 虚拟机之间创建一个虚拟网络部署。
  • 如果您将网站部署到与 SQL Server VM 相同的部署中的虚拟机(听起来不像您那样),那么您可以通过以下方式直接与 SQL Server 通信其内部 IP 地址或 DNS 名称。

而且,只要一切都在同一个数据中心,您的网站和数据库之间就不会有任何数据流量流出数据中心。

关于 Azure SDK 的另一件事:虽然您可能需要 SDK 来访问存储和其他服务,但您不需要 SDK 来与其他虚拟机通信。

【讨论】:

  • 感谢您的提示,虽然我已经在使用 MSDN 上的教程,但也许 WindowsAzure.com 会更有帮助。我使用的教程没有提到为 VM 配置端点,这似乎解决了我无法连接的问题。虽然我现在似乎有其他问题,但一步一步来。
  • 另外,我强烈推荐下载Azure Training Kit。那里涵盖了更多内容,包括动手实验室。
  • 再次感谢您的提示。然而,该套件不支持 windows xp,但看起来这个项目正在为我提供一台新的工作 PC,所以一旦我升级到 windows 7,我一定会抓住这些。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-17
  • 1970-01-01
  • 2017-11-05
  • 2016-03-16
相关资源
最近更新 更多