2013-07-26 17 views
8

每個熟悉MySQL的人都可能使用了mysqldump命令,該命令可以生成一個表示MySQL數據庫中的模式和數據的SQL語句文件。 這些SQL文本文件通常用於很多目的:備份,種植副本,在安裝之間複製數據庫( - 將數據庫複製到登臺環境等)等。有沒有一種工具可以將Cypress的Neo4j圖轉儲出來並從Cypher中重新加載?

是否有類似的Neo4j工具可以將整個圖轉儲到Cypher語句的文本文件中,在空數據庫上執行時會重建原始數據?

謝謝。

回答

15

在Neo4j的版本2(例如2.0.0M3),使用Neo4j的殼,你可以使用命令

dump

這將創建暗號語句(很像的mysqldump會怎麼做。在文件中讀取,你可以使用

cat dump.cql | neo4j-shell

+1

這項工作,但它是非常緩慢的。是有辦法讓密碼創建更快嗎? – rmarimon

+0

這是在一個交易?爲什麼我的db的大小不增加? – Evgenii

+0

QueryExecutionKernelException:輸入無效'c':預期空白,註釋,';'或輸入結束(第2行,第1列(偏移量:60)) 「創建約束(n:」目標「)聲明n.'type'是唯一的」 ^ – FelikZ

5

Cypher只是Neo4J的查詢語言,就像SQL用於MySQL或其他關係數據庫一樣。如果你想傳輸數據庫,那麼你只需要複製包含數據庫文件的文件夾。簡單。

例如我的文件夾simple-graph包含所有的db文件。只需複製文件夾並將其存儲在其他位置即可。您可以直接開始使用它作爲:

GraphDatabaseServiceraphDb = new EmbeddedGraphDatabase(DB_PATH);//DB_PATH is path to the new location 
相關問題