如何重新启动neo4j ha集群并更新graph.db数据?

时间:2012-11-06 03:54:12

标签: neo4j

我有一个neo4j ha集群,有一个主服务器和两个服务器。 我们将定期离线重新生成neo4j数据,然后将其推送到主服务器,重新启动集群,并希望新数据同步到从服务器。 现在,我们按照这些步骤进行。

  1. 删除所有'data / coordinator / version-2'目标并在所有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 / *'并重新启动它。
  7. 我不太了解neo4j的同步机制,我想知道是否有更好的方法来做到这一点,或者我怎样才能改进我的步骤。感谢。

1 个答案:

答案 0 :(得分:1)

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