如何在Neo4j中删除/创build数据库?

是否有可能创build/删除graphics数据库Neo4j中的不同数据库像MySQL中一样? 或者至less,如何删除现有graphics的所有节点和关系以获得干净的testing设置,例如,使用类似于rmrelrm shell命令?

你可以使用rm -rf来移除整个图表目录,因为Neo4j没有存储任何东西:

 rm -rf data/* 

另外,你当然也可以迭代所有的节点,并删除它们之间的关系和节点本身,但是这对于testing来说可能太昂贵了。

甚至更简单的命令来删除所有的节点和关系:

 MATCH (n) OPTIONAL MATCH (n)-[r]-() DELETE n,r 

在Neo4j中创build新的数据库

开始neo4j社区之前,点击浏览选项

在这里输入图像说明

并select一个不同的目录

在这里输入图像说明

在这里输入图像说明

并点击开始button。

在这里输入图像说明

在该方向上创build新的数据库

从Neo4j 2.3开始,

我们可以删除所有有关系的节点 ,

 MATCH (n) DETACH DELETE n 

目前没有任何select在Noe4j中创build多个数据库。 您需要制作多个Neo4j数据存储。 参见参考 。

对于需要一个干净的图运行testing套件的人 – https://github.com/jexp/neo4j-clean-remote-db-addon是一个很好的扩展,允许通过REST调用清除数据库。; 显然,不要在生产中使用它!

快速和肮脏的方式,工作正常:

 bin/neo4j stop rm -rf data/ mkdir data bin/neo4j start 

在不同的neo4j实例上运行你的testing代码。

  1. 将你的neo4j目录复制到一个新的位置。 使用这个进行testing。 cd进入新的目录。
  2. 更改端口,以便您可以运行testing并通常同时使用它。 要更改端口,请打开conf/neo4j-server.properties并将org.neo4j.server.webserver.port设置为未使用的端口。
  3. 在安装程序上启动testing服务器。 做./neo4j stoprm -rf data/graph.db在拆解。

有关更多详细信息,请参阅neo4j:如何切换数据库? 和文档 。

在Neo4j 2.0.0中? 不再支持。 改用OPTIONAL MATCH:

 START n=node(*) OPTIONAL MATCH (n)-[r]-() delete n,r; 

最简单的答案是: NO

“重新开始”的最好方法是

  • 移动到另一个空的数据文件夹

要么

  • 完全closuresNeo4j
  • 清空旧的数据文件夹
  • 重新启动Neo4j并将空文件夹设置为数据文件夹

有一种方法可以删除所有节点和关系(如此处所述)

 MATCH (n) OPTIONAL MATCH (n)-[r]-() DELETE n,r 

在2.0.0 -M6中您可以执行以下Cypher脚本来删除所有节点和关系:

 start n=node(*) match (n)-[r?]-() delete n,r 

从版本3开始,我认为现在可以创build单独的数据库实例,因此它们的位置稍有不同。

参考: https : //neo4j.com/developer/guide-import-csv/

–int retail.db显然是目标数据库,它不能包含现有的数据库。

在我的Ubuntu盒子的位置在:

/var/lib/neo4j/data/databases目前我只能看到graph.db ,我相信它必须是默认的。

你可以删除你的数据文件,如果你想通过这种方式,我build议删除只是你的graph.db,例如。 否则,你会打乱你的身份validation信息。