【问题标题】:How to "host" SQL Server when deploying an ASP.Net site on the web在 Web 上部署 ASP.Net 站点时如何“托管”SQL Server
【发布时间】:2019-10-14 19:47:56
【问题描述】:

我即将部署一个 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.net sql-server vb.net visual-studio ssms


    【解决方案1】:

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

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

    【讨论】:

    • 感谢您的回复@betelgeuce - 这很有意义。是否可以通过SSMS连接数据库并连接到它来开发应用程序,或者是否将其推送到服务器进行测试?我可以只引用服务器名称吗?
    • 一般来说,是的,有时主机可能有 MSSQL 防火墙,您需要使用 VPN 客户端等来访问它。有时,就像 GoDaddy 一样,它需要额外付费。 ie.godaddy.com/help/connect-remotely-to-databases-4978
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-16
    • 2010-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多