数据复制和同步之间的区别?

时间:2013-04-08 16:53:02

标签: replication sync database-replication data-synchronization

我无法找到数据同步和复制之间的差异。

据我所知,复制使两个数据库之间的所有数据都相同。同步不一定使两个数据库之间的所有数据相同。复制是一次性传输,同步可以是小更新以保持数据一致吗?我不太确定,请在这里纠正我?

如果我要拥有一个存储多个移动数据的中央mySQL数据库,我的目标是保持手机中的数据与来自mySQL的数据(仅限某些用户数据)相同,那就是同步还是复制或两者?它最初会获取所有用户数据(复制),然后在那之后发送任何更新的数据(同步)?

希望有人可以解决困惑,非常感谢!

4 个答案:

答案 0 :(得分:8)

非常坦率地说:

  • 复制强烈暗示有(全部)数据的两个或更多副本
  • 同步表示两个或多个数据副本保持最新,但不一定每个副本都包含所有数据(尽管这是通常是数据库同步的情况)

但是我打赌这些术语经常互换使用,我很确定我能找到很多用于描述多个数据库保持同步的“复制”的例子。

所以不要过于沉溺于这两个术语 - 它们意味着同样的一般性,但显然不同的数据库系统或工具如何实现它们所谓的“复制”或“同步”之间存在巨大差异”

答案 1 :(得分:2)

正如之前的海报所解释的那样,它们可互换使用,但它们意味着具有不同的含义。

正如他所说,复制是一种同时存在两个或多个数据库“副本”的情况。这允许用户在不竞争访问时间的情况下处理“相同”数据库,或者不得不应对技术限制,例如通信传输时间或网络延迟。

同步将在一段预定的时间后(可能是分钟,小时,天,周)进行,并且相当于将对数据库的不同副本所做的更改重新合并到主数据库中。

答案 2 :(得分:0)

1)基本上复制使倍数数据库立即相同,几乎为零或接近零时滞。

2)同步与上述相同,但时间延迟=> 0英寸(秒,分钟,天,月等)。

3)时间延迟是一个主要的区别。

4)因此,技术上复制是同步的子集。这就是您听到复制同步等内容的原因。

答案 3 :(得分:0)

对此的一些答案取决于其使用的上下文。

例如,Informatica ETL工具具有"数据复制"和"数据同步"任务 - 这里,数据复制意味着源表中的字段被精确复制到目标表中的相应字段,而同步允许转换 - 公式,查找等。此外,复制是单向流,例如,生产数据库备份。同步可以是双向的,例如,服务可以提供到中央服务器的Web界面,以及提供本地副本以供脱机使用的应用程序 - 更新可以通过db进入并与另一个进行同步。