SQL Server 2008复制 – 潜在的损失

是否有在WAN(跨国家)的任何types的复制,可以保证在灾难中没有数据丢失? 我们总是会失去几秒钟或几分钟的时间?
如果是这样,任何build议的解决办法? 我们正在辩论使用云存储或更改或财务应用程序将我们的一个或两个关键事务logging到异地服务器上。

看起来可能。 SQL Server将其称为数据库镜像,关键是要使用“高安全性”模式,这是同步的。 这意味着所有提交的事务在返回完成之前都将被提交给两个实例。

请注意,这一定会对性能产生影响。 可能会有很大的影响。 每次对数据库进行更新时,都会在本地提交,然后发送到远程(镜像)服务器,在那里处理并提交,然后远程服务器将返回已完成交易的通知那么主数据库服务器将返回到事务完成的客户端。 这额外的往返和处理将导致一定程度的延迟。

有关更多信息,请从这些MSDN文章开始:

  • 数据库镜像概述
  • 同步数据库镜像(高安全模式)

注意:我不是SQL Server DBA。 我的大部分经验是使用PostgreSQL和Oracle。 可能有更好的或替代的方法来做到这一点。 如果是这样,希望SQL Server DBA能够提供它或纠正我所犯的任何错误。

我会build议在现场你应该部署数据库镜像或群集,然后通过WAN链接事务日志复制。

WAN上的镜像具有非常敏感的延迟阈值,并且在由于networking吞吐量而导致性能不佳的情况下,可能会导致镜像故意失去同步以保护数据库…但是,如果数据库镜像发生损坏,那么腐败就会复制到所有的复制品上。

这当然有一些决定因素,如存储要求。 正如您所提到的,您正在考虑将云存储用于灾难恢复,尽pipe这可能有助于确保不会丢失数据,但如果需要100%的正常运行时间,则无法满足此应用程序的关键任务数据库的自动故障转移。 回顾一下如果这是一个非常小的数据库,通过WAN的镜像将是可能的,尽pipebuild议使用encryption。

但是,如果数据库中有任何安全信息,则可能很重要的一点是要查看数据库内容是否存在任何合规性规定,而不是存储在公共云上,而是私有云以满足诸如PCI在特殊情况下。

如果您需要更多帮助,我很乐意提供帮助或提供build议。 祝你好运!