neo4j 5.x相比起之前的版本变动还是挺大的,使用过程中遇到的好多问题都百度不到,这里要感谢知乎、CSDN的各路大佬的回答,帮助我完成了配置
neo4j的安装使用
首先,neo4j的安装可以参考Ubuntu系统neo4j的安装与使用_ubuntu安装neo4j_lulu_陌上尘的博客-CSDN博客
不过要注意最后的修改配置文件会不太一样,要修改的东西所在的行号变了,名称也有变化。
之后,在成功安装java,运行
java --version
能正确输出版本信息的情况下,试图运行
sudo ./neo4j console
却报以下错误
Error: JAVA_HOME is not defined correctly.
We cannot execute
这不一定是你配置错了,也有可能是因为在使用sudo时环境变量发生了改变,这个时候改为运行
sudo -E ./neo4j console
即可正常找到JAVA。
将dump文件导入neo4j
当我想要将一个neo4j 4.x中使用dump命令得到的.dump文件导入neo4j 5.x时,遇上的第一个问题就是,原本的load命令失效了。
原本load命令为
sudo -E ./neo4j-admin load --from=xxx/xxx/xxx.dump --database=neo4j --force
但现在运行这个命令就会告诉你
Unmatched arguments from index 0: 'load', '--from=xxx', '--dataset=xxx', '--force'
Did you mean: database load or database upload or dbms set-default-admin?
但其实5.x的load命令为
sudo -E ./neo4j-admin database load --from-path=xxx/xxx/xxx/ --overwrite-destination=true neo4j
其中,参数--from-path是你dump文件所在的目录,不要把dump文件本身也写上去。dump文件的名字应该与数据库名字一致,例如我最后写的数据库名字为neo4j,那这个文件也要改名为neo4j.dump
这还不算完。load命令Done之后还会告诉你
The loaded database 'neo4j' is not on a supported version (current format: AF4.3.0 introduced in 4.3.0). Use the 'neo4j-admin database migrate' command
版本不对,运行
sudo -E ./neo4j-admin database migrate
即可。现在唯一不太方便的就是每次都要加-E参数,不知道怎么可以省掉。
最后贴上一些对我帮助很大的帖子