2012-03-27 48 views
0

我想实现一个SQL镜像,以帮助ASP.NET网站依赖于备份服务器,以防万一主服务器发生什么事情时,我已经经历了几个相关的问题对这个问题,大多数是对他们具体问题或问题的答案。如何ASP.NET网站和SQL镜像

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

  1. 我们有运行ASP.NET的WebApplication
  2. Web应用程序服务器繁忙使用两个数据库ASP.NET表单DB和自定义数据库,用于存储自定义数据。
  3. 现在我们打算设置一个新的服务器,在主服务器出现故障时作为备用服务器
  4. 我在考虑的建议解决方案如下。
  5. 两个服务器都将举办ASP.NET WebApplication的,既有有数据库部署SQL服务器(具有最新
  6. 现在一台服务器将作为主要的和Push更改其他SQL服务器。

现在的问题:

  1. 是我的做法正确
  2. 在情况下,如果主服务器无法和其他数据库占用了,以后一旦主服务器自带了从做同步到主辅助服务器变更服务? r?
  3. 我可以配置负载平衡器吗,以便在高负载情况下,我们将在这两个服务器之间请求负载均衡?将数据库同步?

任何指针?提前致谢。

回答

0

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

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

因此,为您的第三个问题回答是 - 否,您不能使用第二台服务器进行负载平衡。

当witness-server(如果您使用自动故障转移)检查Principal数据库不可访问时,他会提供恢复镜像数据库的命令。现在可以访问此数据库,并且如果使用连接字符串来使用镜像(请参阅示例here),则禁用将连接到此服务器而不是主服务器失败。如果您将使用没有自动故障转移的镜像,则需要恢复镜像数据库并通过您的手重定向连接。在那之后,同步将会丢失。在这种情况下,您需要在需要时再次设置镜像。