在 Web 上部署 ASP.Net 站点时如何 "host" SQL 服务器

How to "host" SQL Server when deploying an ASP.Net site on the web

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

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

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

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

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

基本上,我的目标是让 Web 应用程序从 view/table 托管在 SQL 服务器中实时检索数据,后端数据可以独立于应用程序,所以应用程序可以在刷新时拉取数据。

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

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