首页 > 解决方案 > 在 Web 上部署 ASP.Net 站点时如何“托管”SQL Server

问题描述

我即将部署一个 ASP.NET Web 应用程序以在生产中进行测试。本质上,这只是一个链接到 SQL Server 表/视图的表,当表中的数据更新时,该表/视图显然是动态的。我有一个托管计划,其中包含我将向其推送文件的站点,其中包括托管计划中的 SQL Server 数据库。我还在网络上托管了一个 SQL Server 实例。

我的问题是,在此部署中处理 SQL Server 的标准方法是什么?我想我有以下选择,但作为一个只离线开发过应用程序的人,这对我来说是新的,所以请原谅我的新手无知。

  1. 让应用程序通过连接字符串中的 IP 地址连接到我的 SQL Server 实例,因为当它位于站点的 FTP 中时,指定服务器名称(例如 SQLDEVSRV01)不会在“网络”上。我是否假设我的连接字符串只能在网络上工作,并且一旦部署到网站,除非通过 TCP/IP 连接,否则将停止运行?

  2. 在同一站点主机位置托管 Web 上的服务器。因此,将站点文件上传到我的网站主机并在那里设置 SQL 服务器。我可以在那里的连接字符串中指定服务器名称(例如 SQLDEVSRV01)吗,因为虽然它不会在开发中工作,因为它不在同一个网络上,但一旦部署在网络上就可以工作?

  3. 使用 localdB 或类似的东西在应用程序中嵌入一个 SQL Server 实例来保存后台数据。如果是这种情况,是否可以使用 SSMS 或其他方法从后端访问数据?

从本质上讲,我的目标是让 Web 应用程序从托管在 SQL Server 中的视图/表中实时检索数据,其中后端数据可以独立于应用程序进行修改、操作和更新,因此应用程序可以在何时提取数据神清气爽。

标签: asp.netsql-servervb.netvisual-studiossms

解决方案


执行此操作的标准方法是将您的数据库部署到托管服务提供商 SQL Server 实例,然后使用连接字符串及其详细信息将您的应用程序连接到该实例。由于它通常是一个共享实例,因此您通常不必担心 SQL 实例机器打补丁等。

就个人而言,我不会自己安装 SQL Server,除非我决定拥有一个我想要控制的实例有好处,也不会更改我的应用程序的结构或实现以适应托管服务提供商的设置。


推荐阅读