直到昨天,使用neo4j + flask + nginx的网站工作正常。 今天早上我发现错误500。
从日志中看,罪魁祸首似乎是neo4j:
tail -100 /var/log/neo4j/neo4j.log
Caused by: org.neo4j.kernel.StoreLockException: Unable to obtain lock on store lock file: /usr/share/neo4j/data/databases/target_association.db/store_lock. Please ensure no other process is using this database, and that the directory is writable (required even for read-only access)
at org.neo4j.kernel.internal.StoreLocker.storeLockException(StoreLocker.java:94)
at org.neo4j.kernel.internal.StoreLocker.checkLock(StoreLocker.java:86)
at org.neo4j.kernel.internal.StoreLockerLifecycleAdapter.start(StoreLockerLifecycleAdapter.java:40)
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:433)
... 11 more
Caused by: java.io.FileNotFoundException: /usr/share/neo4j/data/databases/graph.db/store_lock (Permission denied)
这对我来说很麻烦:昨天工作正常,所有查询都是GET,db文件夹的用户权限归testuser:staff
所有
我没有改变持续时间:可能发生了什么?
Testuser还运行与db交互的烧瓶应用程序 - 所以我不明白为什么知道有用户权限问题。
该应用程序也归www-data group所有。
我看了看: https://groups.google.com/forum/#!topic/neo4j/k2c6PgV6WFE
你能否展示一个好的程序(ubuntu命令)来调试和更正运行neo4j的用户以及db文件夹权限的权限?我应该换成root吗?
我的应用权限设置为:
/var/www/app/
testuser:www-data
py2neo和连接器在
中/var/www/app/virtualenvironment/ ..
和
/usr/share/neo4j/data/databases/graph.db
testuser:staff