2012-11-06 100 views
2

我有一个主人和两个奴隶neo4j哈集群。 我们将周期性地重新生成neo4j数据,然后将其推送到主站,重新启动集群,并希望新数据同步到从站。 现在,我们在这些步骤中完成它。如何重新启动neo4j ha集群并更新graph.db数据?

  1. 删除所有'data/coordinator/version-2'direcotry并在所有neo4j实例上执行'bin/neo4j-coordinator stop'来停止同步。
  2. 停止主实例,删除它的'data/graph.db/*',并将离线生成的新数据复制到主设备上
  3. 在所有neo4j实例上执行'bin/neo4j-coordinator start',重新启动同步。
  4. 用新数据启动主实例。但奇怪的是,在我们执行下一步之前,从属实例将不会同步新数据。
  5. 停止slave1,删除它的'data/graph.db/*'并重新启动它。
  6. 停止slave2,删除它的'data/graph.db/*'并重新启动它。

我不太明白neo4j的同步机制,我想知道是否有更好的方法来做到这一点,或者我该如何改进我的步骤。谢谢。

回答

1

如果您已经拥有数据的脱机副本,并且可以同时停止所有3个实例,只需将脱机数据先复制到所有3个实例,而不是仅将主数据复制到所有3个实例。然后,当你启动协调器和数据库时,你知道它们都是同步的。另外,我会在删除任何协调员数据之前先停止服务。

相关问题