将neo4j外壳连接到java中的嵌入式neo4j
[neo4j:2.1.3,Windows 7 64位,Java 7] 我希望能够使用neo4j shell连接到java中的嵌入式neo4j数据库。 正如建议的那样,添加属性remote\u shell\u enabled=“true”应该可以做到这一点 我按照建议进行了尝试,但我的shell无法连接到数据库,出现错误 原因:org.neo4j.kernel.StoreLockException:无法获取锁 在存储锁定文件上: ~\store\u锁。请确保没有 另一个进程正在使用这个数据库,并且目录是 可写(即使是只读访问也需要) 位于org.neo4j.kernel.StoreLocker.checkLock(StoreLocker.java:82) 我在代码中设置了如下属性将neo4j外壳连接到java中的嵌入式neo4j,neo4j,Neo4j,[neo4j:2.1.3,Windows 7 64位,Java 7] 我希望能够使用neo4j shell连接到java中的嵌入式neo4j数据库。 正如建议的那样,添加属性remote\u shell\u enabled=“true”应该可以做到这一点 我按照建议进行了尝试,但我的shell无法连接到数据库,出现错误 原因:org.neo4j.kernel.StoreLockException:无法获取锁 在存储锁定文件上: ~\store\u锁。请确保没有 另一个进程正在使用这个数据库,并且
graphDb = new GraphDatabaseFactory().newEmbeddedDatabaseBuilder(DBPATH).setConfig("remote_shell_enabled","true").newGraphDatabase();
此外,这样做会导致数据库不会通过shutdownhook关闭。相反,这个过程并没有结束,似乎关闭挂钩永远不会执行
但是,如果我使用下面的命令来启动属性,那么每次都会成功执行关闭挂钩
graphDb = new GraphDatabaseFactory().newEmbeddedDatabase(DBPATH);
或
是否有其他方法启用shell对嵌入式数据库的访问。要在端口5000处打开neo4j shell服务器,请使用以下命令启动数据库
new GraphDatabaseFactory().newEmbeddedDatabaseBuilder(DB_DIR)
.setConfig(ShellSettings.remote_shell_enabled, "true")
.setConfig(ShellSettings.remote_shell_port, "5000")
.newGraphDatabase();
以及使用
neo4j-shell -port 5000
这样行吗?谢谢彼得,行了。我用-path选项而不是主机端口启动shell。
neo4j-shell -port 5000