最近、インポートツールを使用して新しいneo4jデータベースを正常に作成しました。それでは、実際にUbunutuラップトップのデータベースにアクセスしたいと思います。
そのためconf/neo4j-server.properties
に、正しい場所を指すように適切に編集しました。
しようとするとsudo service neo4j-service start
、エラーが発生します
WARNING: Max 1024 open files allowed, minimum of 40 000 recommended. See the Neo4j manual.
Starting Neo4j Server...WARNING: not changing user
process [10810]... waiting for server to be ready.. Failed to start within 120 seconds.
Neo4j Server may have failed to start, please check the logs.
ログを確認すると、権限について多くの不満があります。
ログから、
2016-05-15 01:58:31.143-0700 ERROR Failed to start Neo4j: Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@1b68b9a4' was successfully initialized, but failed to start. Please see attached cause exception.
...
Caused by: java.lang.RuntimeException: java.io.FileNotFoundException: /home/monica/new_database_directory/messages.log (Permission denied)
...
Caused by: java.lang.RuntimeException: java.io.FileNotFoundException: /home/monica/new_database_directory/messages.log (Permission denied)
Caused by: java.lang.RuntimeException: java.io.FileNotFoundException: /home/monica/new_database_directory/messages.log (Permission denied)
ぐるぐる回ってみると、他の何人かがこの問題を抱えていることがわかります。
しかし、問題がよくわからないので、どうすればいいのかわかりません。neo4jがどのように使用されるのかわかりません。ユーザーはいつどこで指定されますか?自分に許可を与えるために、Neo4J構成ファイルをどこかに変更する必要がありますか?または、作成したばかりのディレクトリのアクセス許可を変更する必要がありますか?その場合、どのユーザーに変更するかをどのように知ることができますか?
この状況でneo4jがどのように構成されているかについて、それを機能させる方法だけでなく、もっと理解したいと思っています。どんなアドバイスも大歓迎です。
サービスとして実行されているNeo4jは、データベースを配置したフォルダー(など/var/lib/neo4j/data
)の所有権を持っている必要があります。あなたのデータベースは他の場所にあり、現在アクセスできるのはあなただけです(ログインしたユーザーがそのデータベースフォルダを作成したため)。
次のコマンドを使用して、そのデータフォルダー全体へのアクセス許可を(再帰的に)変更してみてください。
sudo chown -R neo4j:adm /home/monica/new_database_directory
既存の/ var / lib / neo4jフォルダーを見ると、所有権はそれに一致している必要があります(neo4j:adm
)。chown
コマンドを実行した後、新しいデータフォルダーの所有権は同じになります。
その後、サービスを再開してみてください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加