neo4j:如何更改数据库存储位置?
Posted
技术标签:
【中文标题】neo4j:如何更改数据库存储位置?【英文标题】:neo4j: How do I change the database storage location? 【发布时间】:2012-06-08 22:30:36 【问题描述】:您好,我使用自定义 java 应用程序创建了一个 neo4j 数据库,并尝试更改配置文件中的路径以连接到创建的数据库。
尝试在 webadmin 控制台中检查数据时,只有节点 0 可见(似乎数据库为空)。我尝试将同一个数据库导入到 Gephi 中,它不为空。
此外,当我尝试切换回原始数据库时,该数据库也不是空的,在 webadmin 中只出现了节点 0。
我尝试通过以下方式修改 neo4j-server.properied 文件:
#*****************************************************************
# Administration client configuration
#*****************************************************************
# location of the servers round-robin database directory. possible values:
# - absolute path like /var/rrd
# - path relative to the server working directory like data/rrd
# - commented out, will default to the database data directory.
org.neo4j.server.webadmin.rrdb.location=data/rrd
# REST endpoint for the data API
# Note the / in the end is mandatory
#org.neo4j.server.webadmin.data.uri=/db/data/ #original database
org.neo4j.server.webadmin.data.uri="/db/mydatabase" #my database
# REST endpoint of the administration API (used by Webadmin)
org.neo4j.server.webadmin.management.uri=/db/manage/
# Low-level graph engine tuning file
org.neo4j.server.db.tuning.properties=conf/neo4j.properties
切换回原数据库后(注释新路径,取消注释旧路径)
org.neo4j.server.webadmin.data.uri=/db/data/ #original database
#org.neo4j.server.webadmin.data.uri="/db/mydatabase" #my database
旧的好像也是空的。
有谁知道如何以及在哪里设置路径以便在 webadmin 控制台中查看适当的数据库并能够对所需的数据库执行查询?
谢谢!
【问题讨论】:
【参考方案1】:您需要像这样设置数据库目录在磁盘上的位置:
org.neo4j.server.database.location=data/graph.db
见http://docs.neo4j.org/chunked/stable/server-configuration.html
【讨论】:
已尝试像这样设置位置,但所需的数据库在 Java 应用程序和 Web 管理控制台中均不可见。 @espeed 我用过 "neo4j-community-3.0.1" 但没有 conf/neo4j-server.properties 这样的文件。并且有 neo4j.conf 的文件名,但在这个文件中没有这样的属性 org.neo4j.server.database.location=data/graph.db 。你能帮我如何切换数据库。【参考方案2】:您首先需要确认您正在连接的数据库已正确关闭(意味着您不应拍摄正在运行的数据库的映像)。
如果您处于服务器模式,请从文件中设置数据库的位置
conf/neo4j-server.properties
通过编辑下面的行。
org.neo4j.server.database.location=data/graph.db
如果您使用嵌入式 neo4j,您可以在实例化 GraphDatabaseService 时设置数据库的位置,如下所示:
new EmbeddedGraphDatabase("Path To Db Directory");
【讨论】:
我用过 "neo4j-community-3.0.1" 但没有 conf/neo4j-server.properties 这样的文件。并且有 neo4j.conf 的文件名,但在这个文件中没有这样的属性 org.neo4j.server.database.location=data/graph.db 。你能帮我如何切换数据库。 @anujdhiman 参考github.com/neo4j/neo4j/wiki/Neo4j-3.0-changelog 配置设置 org.neo4j.server.database.location 已被删除 新设置 dbms.active_database 用于指定要通过名称挂载的数据库新设置 dbms。 directory.data 用于配置数据目录的路径【参考方案3】:对于其他努力寻找此文件的人 - 在我的 Ubuntu 上,我在 /etc/neo4j/neo4j.conf
下找到了它
【讨论】:
【参考方案4】:我是通过编辑行来完成的
# dbms.active_database=graph.db
到
dbms.active_database=new.db
在文件conf/neo4j.conf
【讨论】:
以上是关于neo4j:如何更改数据库存储位置?的主要内容,如果未能解决你的问题,请参考以下文章
如何从 java 中获取 Neo4j 图形数据库的节点数,我们可以从磁盘存储和重用 graphdb 吗?