2012-11-06 101 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個實例。然後,當你啓動協調器和數據庫時,你知道它們都是同步的。另外,我會在刪除任何協調員數據之前先停止服務。

相關問題