![如何实现两个站点之间的对等数据库复制?](https://linux22.com/image/550947/%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E4%B8%A4%E4%B8%AA%E7%AB%99%E7%82%B9%E4%B9%8B%E9%97%B4%E7%9A%84%E5%AF%B9%E7%AD%89%E6%95%B0%E6%8D%AE%E5%BA%93%E5%A4%8D%E5%88%B6%EF%BC%9F.png)
我正在寻找可以在两个站点之间复制数据的 SQL Server 数据库解决方案(而不仅仅是单向)
我研究过 SQL Server 故障转移群集 (MSCS),但是由于我有两个不同的站点(生产和 DR),实现点对点数据内容复制会不会太难或者不可能?
我的计划是在 VMware ESXi 和 Windows Server 2008 之上构建此解决方案,以便在两个站点进行服务器监控。
不过,就数据库镜像而言,我确实考虑过这种方法,但最终决定点对点复制将为从系统读取数据进入数据库提供更高的可用性。这种情况是,如果其中一个站点与外界断开连接,我希望监控软件(使用 SQL Server 2008)仍然继续从该站点内的所有系统收集数据。数据库镜像不允许这样做,因为只有主数据库是可写的。点对点复制将允许我利用负载平衡,这可能会提高性能,而不仅仅是冗余
答案1
看一下演示:使用 SQL Server 2008 R2 StreamInsight 进行实时分析,点播疯狂三月和大量实时连续 ETL 和审计。所有这些解决方案都在解决类似的问题(收集监控数据)并面临类似的问题(优雅地处理后端收集器一次几秒、几分钟或几天的不可用情况)。所以基本上,如何以高可用性的方式写入数据库,即使数据库暂时不可用。他们的共同点是他们使用可靠的消息传递:它们写入本地 SQL Express 队列,然后让服务代理将写入内容传送至最终目的地。