Linux系统下安装Neo4j

一、安装环境

RHEL7 VMware12
本地搭建的虚拟机,2核,8G
neo4j-community-4.0.4-unix.tar.gz
jdk-11.0.7_linux-x64_bin.tar.gz (neo4j基于java)
Xftp6
Xsehll6

二、安装步骤

1、下载安装包

下载NEO4J 社区版 linux版本

或者直接 在服务器上下载
curl -O http://dist.neo4j.org/neo4j-community-4.0.4-unix.tar.gz

2、解压安装

tar -axvf neo4j-community-4.0.4-unix.tar.gz
或者
tar zxvf neo4j-community-4.0.4-unix.tar.gz

3、修改配置

在neo4j安装目录下找到conf文件夹下的neo4j.conf文件
vim neo4j.conf

修改相应配置如下:

  • 修改第22行load csv时l路径,在前面加个#,可从任意路径读取文件
    #dbms.directories.import=import

  • 修改35行和36行,设置JVM初始堆内存和JVM最大堆内存。生产环境给的JVM最大堆内存越大越好,但是要小于机器的物理内存
    dbms.memory.heap.initial_size=1g
    dbms.memory.heap.max_size=2g

  • 修改46行,可以认为这个是缓存,如果机器配置高,这个越大越好
    dbms.memory.pagecache.size=4g

  • 修改54行,去掉改行的#,可以远程通过ip访问neo4j数据库
    dbms.connectors.default_listen_address=0.0.0.0

默认 bolt端口是7687,http端口是7474,https关口是7473,不修改下面3项也可以

  • 修改75行,去掉#,设置bolt端口为7687,端口可以自定义,只要不和其他端口冲突就行
    #dbms.connector.bolt.listen_address=:7687

  • 修改79行,去掉#,设置http端口为7474,端口可以自定义,只要不和其他端口冲突就行
    dbms.connector.http.listen_address=:7474

  • 修改83行,去掉#,设置http端口为7473,端口可以自定义,只要不和其他端口冲突就行
    dbms.connector.https.listen_address=:7473

  • 修改208行,去掉#,允许从远程url来load csv
    dbms.security.allow_csv_import_from_file_urls=true

  • 修改246行,允许使用neo4j-shell,类似于mysql 命令行之类的
    dbms.shell.enabled=true
    neo4j 4.0.4没有这一项

  • 修改235行,去掉#,设置连接neo4j-shell的端口,一般都是localhost或者127.0.0.1,这样安全,其他地址的话,一般使用https就行
    dbms.shell.host=127.0.0.1
    neo4j 4.0.4没有这一项

  • 修改250行,去掉#,设置neo4j-shell端口,端口可以自定义,只要不和其他端口冲突就行
    dbms.shell.port=1337
    neo4j 4.0.4没有这一项

  • 修改254行,设置neo4j可读可写
    dbms.read_only=false

4、启动

进入neo4j的bin目录
./neo4j start
Linux系统下安装Neo4j

5、查看状态

Linux系统下安装Neo4j

6、客户端访问

  • 查看ip地址
    ifconfig

Linux系统下安装Neo4j

  • 浏览器 服务器IP地址:7474

  • 初次登陆neo4j
    neo4j v4之前可以用 初始账号neo4j 密码neo4j 登陆,然后修改密码。
    Linux系统下安装Neo4j

  • 新版本的变动
    这里我们是用的Neo4j 4.0.4,所以当我们用neo4j/neo4j去登陆时候,碰到了这样一个错误:Connect Neo.ClientError.Security.Unauthorized: The client is unauthorized due to authentication failure
    Linux系统下安装Neo4j
    根据官方的解释,是因为在4以上的版本,他们改变了更改密码的方法,neo4j/neo4j是无法登陆的,需要到服务器上去修改配置之后,用cypher在neo4j的浏览器上去改或者在cypher-shell里面去改。
    Linux系统下安装Neo4j
    相关链接

  • 新版本的修改密码的方法
    官方修改密码方法的链接

    按照官方的步骤,我先停止了neo4j
    然后,解开了neo4j.conf里面的dbms.security.auth_enabled=false的注释
    而后,重新启动了neo4j
    通过neo4j/neo4j登陆上了system,然后去修改neo4j的密码Linux系统下安装Neo4j
    神奇的是,虽然上面显示的是unsupported administration command,但是这时,我用"password"这个密码在本地浏览器登陆,显示登陆成功。密码就是我当时设置的"password"。
    Linux系统下安装Neo4j
    本来以为大功告成。。。
    这时,我再次关闭
    neo4j stop
    vi neo4j.conf, 再次将dbms.security.auth_enabled=false这一行注释掉
    neo4j start
    网页登陆,发现又登不上了。

wtf?
于是,再次使用neo4j 登陆 system,这时在输入密码neo4j登陆之后,要求我修改密码了:
Linux系统下安装Neo4j
再次刷新本地浏览器上的登陆页面,输入neo4j/password
显示登陆成功。
Linux系统下安装Neo4j

7、停止

./neo4j stop

参考链接:https://blog.****.net/u013946356/article/details/81736232