Ubuntu version Neo4j installation latest complete process

Ubuntu version Neo4j database successful installation tutorial

After checking a lot of information, after trying to install and constantly reporting errors, neo4j finally succeeded. Let me record how to install the Neo4j graph database, how to configure the environment and install the service.

Install in the following environment

  • ubuntu 20.04.1
  • java system default 8

Target installation:

  • neo4j-community-4.2.19

1. Download Neo4j

Download the community version neo4j-community-4.2.19 on the official website, and be careful not to download it wrong.
https://neo4j.com/download-center/#community

After that, I put it in the /usr/local location in the system, and you can choose and customize it freely. (If you install here like me, you need to use sudo to start neo4j, otherwise the third point below will appear, and the error will appear.)
insert image description hereUnzip the compressed package to this directory

tar -xzvf neo4j-community-4.2.19-unix.tar.gz

2. JDK11 download

The operation of neo4j requires the jdk to be installed according to the version of neo4j. I have tried several times here and read some messy posts on the Internet. Finally, according to neo4j-community-4.2.19, I installed JDK11 to make it successfully installed.

During the installation process, according to the error message, it is inferred that the neo4j 4.x version should be installed, and JDK11 needs to be installed. Other version numbers are different JDKs. Seeing online posts, it seems that the neo4j 3.x version needs to be installed. JDK8 (haven’t tried it yet, confirmed it)

# 下载安装jdk11
 sudo apt install openjdk-11-jdk
# 配置环境

 export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64    # 这边首先需要自己确定一下路径是不是这个/usr/lib/jvm/java-1.11.0-openjdk-amd64
 export JRE_HOME=${
    
    JAVA_HOME}/jre
 export CLASSPATH=.:${
    
    JAVA_HOME}/lib:${
    
    JRE_HOME}/lib 
 export PATH=$NEO4J_HOME/bin

insert image description here

then enter

 java -version

You can see that the jdk version has changed to 11.0.16

3. Modify the configuration and start Neo4j

Go into the conf directory of Neo4j, here is cd /usr/local/neo4j-community-4.2.19/conf/

sudo vim neo4j.conf

Modify as follows:


# 修改23行,去掉 #号
dbms.directories.import=import  # 可从任意路径读取文件

# 修改71行,去掉 #号
dbms.connectors.default_listen_address=0.0.0.0      #修改为远程通过ip访问neo4j数据库
# 默认bolt端口是7687,http端口是7474,https端口是7473,不修改下面3项也可以

# 端口可以自定义,只要不和其他端口冲突就行
# 修改92行,去掉 #号
dbms.connector.bolt.listen_address=:7687		#修改为bolt端口为7687
# 修改97行,去掉 #号
dbms.connector.http.listen_address=:7474		#修改为http端口为7474
# 修改102行,去掉 #号
dbms.connector.https.listen_address=:7473		#修改为https端口为7473
# 修改230行,去掉 #号
 dbms.security.allow_csv_import_from_file_urls=true       # 允许从远程的url,来载入csv文件

Save and exit, go to the bin directory of Neo4j, here is cd /usr/local/neo4j-community-4.2.19/bin/

start command

./neo4j console
#其他命令,启动服务,停止服务,重启服务、查询服务的状态
./neo4j start
./neo4j stop
./neo4j restart
./neo4j status

Because the installation on my side is under the /usr/local directory, I kept reporting errors at first, and there was no relevant answer on the Internet.

I thought about it for a while at the beginning but didn't think of a solution, or saw the solution, and finally guessed that it was a permission problem.

It can be solved by running sudo here.

sudo ./neo4j console

insert image description here

The error is as follows:

2022-09-22 09:43:07.833+0000 INFO  Starting...
ERROR StatusLogger RollingFileManager (/usr/local/neo4j-community-4.2.19/logs/debug.log) java.io.FileNotFoundException: /usr/local/neo4j-community-4.2.19/logs/debug.log (Permission denied)
 java.io.FileNotFoundException: /usr/local/neo4j-community-4.2.19/logs/debug.log (Permission denied)
        at java.base/java.io.FileOutputStream.open0(Native Method)
        at java.base/java.io.FileOutputStream.open(FileOutputStream.java:298)
        at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:237)
        at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:158)
        at org.neo4j.logging.shaded.log4j.core.appender.rolling.RollingFileManager$RollingFileManagerFactory.createManager(RollingFileManager.java:746)
        at org.neo4j.logging.shaded.log4j.core.appender.rolling.RollingFileManager$RollingFileManagerFactory.createManager(RollingFileManager.java:716)
        at org.neo4j.logging.shaded.log4j.core.appender.AbstractManager.getManager(AbstractManager.java:114)
        at org.neo4j.logging.shaded.log4j.core.appender.OutputStreamManager.getManager(OutputStreamManager.java:100)
        at org.neo4j.logging.shaded.log4j.core.appender.rolling.RollingFileManager.getFileManager(RollingFileManager.java:217)
        at org.neo4j.logging.shaded.log4j.core.appender.RollingFileAppender$Builder.build(RollingFileAppender.java:146)
        at org.neo4j.logging.log4j.LogConfig.createRollingFileAppender(LogConfig.java:183)
        at org.neo4j.logging.log4j.LogConfig.getAppender(LogConfig.java:152)
        at org.neo4j.logging.log4j.LogConfig.configureLogging(LogConfig.java:105)
        at org.neo4j.logging.log4j.LogConfig$Builder.build(LogConfig.java:293)
        at org.neo4j.graphdb.factory.module.GlobalModule.createLogService(GlobalModule.java:337)
        at org.neo4j.graphdb.factory.module.GlobalModule.<init>(GlobalModule.java:174)
        at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.createGlobalModule(DatabaseManagementServiceFactory.java:252)
        at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.build(DatabaseManagementServiceFactory.java:126)
        at org.neo4j.server.CommunityBootstrapper.createNeo(CommunityBootstrapper.java:36)
        at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:134)
        at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:90)
        at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:35)
2022-09-22 09:43:07.874+0000 ERROR Failed to start Neo4j on dbms.connector.http.listen_address, a socket address. If missing port or hostname it is acquired from dbms.default_listen_address.
java.lang.IllegalStateException: ManagerFactory [org.neo4j.logging.shaded.log4j.core.appender.rolling.RollingFileManager$RollingFileManagerFactory@3e792ce3] unable to create manager for [/usr/local/neo4j-community-4.2.19/logs/debug.log] with data [org.neo4j.logging.shaded.log4j.core.appender.rolling.RollingFileManager$FactoryData@53bc1328[pattern=/usr/local/neo4j-community-4.2.19/logs/debug.log.%i, append=true, bufferedIO=true, bufferSize=8192, policy=SizeBasedTriggeringPolicy(size=20971520), strategy=DefaultRolloverStrategy(min=1, max=7, useMax=false), advertiseURI=null, layout=org.neo4j.logging.log4j.Neo4jLogLayout@26f143ed, filePermissions=null, fileOwner=null]]
        at org.neo4j.logging.shaded.log4j.core.appender.AbstractManager.getManager(AbstractManager.java:116) ~[neo4j-logging-4.2.19.jar:4.2.19]
        at org.neo4j.logging.shaded.log4j.core.appender.OutputStreamManager.getManager(OutputStreamManager.java:100) ~[neo4j-logging-4.2.19.jar:4.2.19]
        at org.neo4j.logging.shaded.log4j.core.appender.rolling.RollingFileManager.getFileManager(RollingFileManager.java:217) ~[neo4j-logging-4.2.19.jar:4.2.19]
        at org.neo4j.logging.shaded.log4j.core.appender.RollingFileAppender$Builder.build(RollingFileAppender.java:146) ~[neo4j-logging-4.2.19.jar:4.2.19]
        at org.neo4j.logging.log4j.LogConfig.createRollingFileAppender(LogConfig.java:183) ~[neo4j-logging-4.2.19.jar:4.2.19]
        at org.neo4j.logging.log4j.LogConfig.getAppender(LogConfig.java:152) ~[neo4j-logging-4.2.19.jar:4.2.19]
        at org.neo4j.logging.log4j.LogConfig.configureLogging(LogConfig.java:105) ~[neo4j-logging-4.2.19.jar:4.2.19]
        at org.neo4j.logging.log4j.LogConfig$Builder.build(LogConfig.java:293) ~[neo4j-logging-4.2.19.jar:4.2.19]
        at org.neo4j.graphdb.factory.module.GlobalModule.createLogService(GlobalModule.java:337) ~[neo4j-4.2.19.jar:4.2.19]
        at org.neo4j.graphdb.factory.module.GlobalModule.<init>(GlobalModule.java:174) ~[neo4j-4.2.19.jar:4.2.19]
        at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.createGlobalModule(DatabaseManagementServiceFactory.java:252) ~[neo4j-4.2.19.jar:4.2.19]
        at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.build(DatabaseManagementServiceFactory.java:126) ~[neo4j-4.2.19.jar:4.2.19]
        at org.neo4j.server.CommunityBootstrapper.createNeo(CommunityBootstrapper.java:36) ~[neo4j-4.2.19.jar:4.2.19]
        at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:134) [neo4j-4.2.19.jar:4.2.19]
        at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:90) [neo4j-4.2.19.jar:4.2.19]
        at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:35) [neo4j-4.2.19.jar:4.2.19]
2022-09-22 09:43:07.878+0000 INFO  Neo4j Server shutdown initiated by request
2022-09-22 09:43:07.878+0000 INFO  Stopped.

You're done!

Guess you like

Origin blog.csdn.net/Fuziqp/article/details/126995896