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 命令行之类的neo4j 4.0.4没有这一项
dbms.shell.enabled=true -
修改235行,去掉#,设置连接neo4j-shell的端口,一般都是localhost或者127.0.0.1,这样安全,其他地址的话,一般使用https就行neo4j 4.0.4没有这一项
dbms.shell.host=127.0.0.1 -
修改250行,去掉#,设置neo4j-shell端口,端口可以自定义,只要不和其他端口冲突就行neo4j 4.0.4没有这一项
dbms.shell.port=1337 -
修改254行,设置neo4j可读可写
dbms.read_only=false
4、启动
进入neo4j的bin目录
./neo4j start
5、查看状态
6、客户端访问
- 查看ip地址
ifconfig
-
浏览器 服务器IP地址:7474
-
初次登陆neo4j
neo4j v4之前可以用 初始账号neo4j 密码neo4j 登陆,然后修改密码。 -
新版本的变动
这里我们是用的Neo4j 4.0.4,所以当我们用neo4j/neo4j去登陆时候,碰到了这样一个错误:Connect Neo.ClientError.Security.Unauthorized: The client is unauthorized due to authentication failure
根据官方的解释,是因为在4以上的版本,他们改变了更改密码的方法,neo4j/neo4j是无法登陆的,需要到服务器上去修改配置之后,用cypher在neo4j的浏览器上去改或者在cypher-shell里面去改。
相关链接 -
新版本的修改密码的方法
官方修改密码方法的链接按照官方的步骤,我先停止了neo4j
然后,解开了neo4j.conf里面的dbms.security.auth_enabled=false的注释
而后,重新启动了neo4j
通过neo4j/neo4j登陆上了system,然后去修改neo4j的密码
神奇的是,虽然上面显示的是unsupported administration command,但是这时,我用"password"这个密码在本地浏览器登陆,显示登陆成功。密码就是我当时设置的"password"。
本来以为大功告成。。。
这时,我再次关闭
neo4j stop
vi neo4j.conf, 再次将dbms.security.auth_enabled=false这一行注释掉
neo4j start
网页登陆,发现又登不上了。
wtf?
于是,再次使用neo4j 登陆 system,这时在输入密码neo4j登陆之后,要求我修改密码了:
再次刷新本地浏览器上的登陆页面,输入neo4j/password
显示登陆成功。
7、停止
./neo4j stop
参考链接:https://blog.****.net/u013946356/article/details/81736232