【问题标题】:How to ASP.NET Site and SQL Mirroring如何进行 ASP.NET 站点和 SQL 镜像
【发布时间】:2012-03-27 16:24:26
【问题描述】:

我正在尝试实现 SQL 镜像来帮助 ASP.NET 站点依赖备份服务器,以防主服务器发生问题,我已经解决了一些与此主题相关的问题,并且大多数是针对特定问题的答案他们有问题或问题。

以下总结我正在尝试做的事情,如果我走在正确的道路上,请帮助我/指导我。

  1. 我们有一个繁忙的服务器运行 ASP.NET WebApplication
  2. Web 应用程序使用两个数据库 ASP.NET FORMS DB 和自定义数据库来存储自定义数据。
  3. 现在我们计划设置一个新的服务器,作为备用服务器,以防主服务器出现故障
  4. 我正在考虑的建议解决方案如下。
  5. 两台服务器都将托管 ASP.NET WebApplication,两者都有已部署数据库的 SQL Server(最新的
  6. 现在一台服务器将充当主服务器并将更改推送到其他 SQL 服务器。

现在的问题:

  1. 我的方法对吗?
  2. 如果主服务器出现故障并且其他数据库占用,稍后一旦主服务器出现,辅助服务器的更改是否会同步到主服务器?
  3. 我能否配置一个负载平衡器,以便在高负载时我们将在这两个服务器之间进行请求负载平衡?数据库会同步吗?

任何指针?提前致谢。

【问题讨论】:

    标签: asp.net sql sql-server-2008-r2


    【解决方案1】:

    我认为您的第一个问题的答案是:不,您需要一个带有appropriate connections string to principal and mirror database 的 ASP.Net 网络服务器,但您的镜像必须处于自动故障转移模式。

    当您使用mirroring 时,您有两台服务器(为简单起见,我们不会谈论见证服务器)。第一个具有可供用户(主体)工作和访问的数据库,第二个具有镜像数据库。此数据库不可读取或写入(一个例外:您可以从此数据库创建 SNAPSHOT,但不是您的情况),此数据库处于恢复状态,因为此服务器应用来自 Principal 的事务。

    所以,您的第三个问题的答案是 - 不,您不能使用第二台服务器进行负载平衡。

    当见证服务器(如果您使用自动故障转移)检查主体数据库不可访问时,他会发出恢复镜像数据库的命令。这个数据库现在可以访问了,如果你使用连接字符串来使用镜像(参见示例here),客户端将连接到这个服务器而不是失败的主体服务器。如果您将使用没有自动故障转移的镜像,您需要手动恢复镜像数据库并重定向连接。之后同步将丢失。在这种情况下,您需要在需要时重新设置镜像。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-11
      • 2016-02-29
      • 2015-03-19
      相关资源
      最近更新 更多