如何同步 MS SQL Server 数据库?

如何同步 MS SQL Server 数据库?

如何同步 MS SQL Server 数据库?有没有什么工具,最好是开源的?

答案1

对于计划和临时数据库同步,您可以使用ApexSQL 差异(用于对象模式同步)和ApexSQL 数据差异(用于记录同步)

它们不能用于实时同步。在我看来,最好使用数据库镜像进行实时同步

答案2

正如其他人所说,SQL Server 2008 中有很多内置方法可以使两台服务器实时或按计划同步。

您应考虑以下几点:

  • 两台服务器的距离有多远(即它们之间的带宽和延迟是多少)?
  • 这两个数据库有多大?
  • 数据变化的频率是多少?变化量是多少?
  • 数据实际上是否发生了变化,还是只有新数据添加到现有数据中?

根据答案,您可以选择最适合您需求的方法;除了已经描述的方法(复制和镜像)之外,请记住您还可以做一些其他的事情:

  • 大号航运
  • 使用集成服务导出/导入数据。
  • 备份/恢复。
  • 拆卸、制作物理副本、附加。

答案3

您看过内置的镜像功能吗?Technet 有一个简短的描述这里. 主服务器将其事务日志记录发送到辅助服务器,然后辅助服务器重播事务日志。

镜像可以同步或异步设置。

答案4

我有一个博客文章描述如何为非域服务器设置数据库镜像。但是,这并不允许您同时激活两个 SQL Server,要做到这一点,您需要进行某种形式的复制。根据数据的访问方式,如果全部读取,则还不算太糟;如果在一台服务器上读取,在另一台服务器上读取/写入,同样也不算太糟;如果是写入/写入,那么您将经历一些“有趣”的时刻。

相关内容