我启动并运行了独立的graphdb-free-8.4.0版本和一个初始化的工作台。 当我尝试使用maven测试Embedded Graphdb连接时,是说
[错误]无法执行目标 org.codehaus.mojo:exec-maven-plugin:1.6.0:java(default-cli)在 项目my-first-app:执行Java时发生异常 类。 org.eclipse.rdf4j.sail.SailException:下的存储库 /opt/maven-graphdb-test/graphdb-free-8.4.0/data/repositories/test/storage 当前正在使用中(我们无法锁定其锁定文件: /opt/maven-graphdb-test/graphdb-free-8.4.0/data/repositories/test/storage/lock)!
我必须关闭当前工作台以测试嵌入式连接。
有没有一种方法可以解决此问题而无需关闭工作台。
谢谢。
答案 0 :(得分:1)
GraphDB是一个数据库,像每个数据库一样,它需要对文件的独占读/写访问权限以保持数据的一致性。最简单的答案是您不能在同一数据映像上运行多个数据库实例。您可以通过两种方法解决此问题:
针对远程服务器运行客户端
根据服务器端点(http://localhost:7200)而非文件系统初始化客户端。在这种情况下,所有客户端请求都将由服务器处理,因此只有一个进程可以读写数据库映像。
使用其自己的数据映像运行每个服务器
运行第二台嵌入式GraphDB服务器以使用其他LoadBalancer
目录。这将创建两个独立的数据库副本,而不会造成干扰。