在Ubuntu20.04使用neo4j 5.9.0遇到的问题记录

文章讲述了升级到Neo4j5.x版本后遇到的配置问题,包括JAVA_HOME环境变量在使用sudo时的调整,以及新版本load命令的变化。作者详细描述了如何正确导入.dump文件,包括使用databaseload命令和处理版本不兼容的问题,以及需要运行databasemigrate命令进行版本迁移。文章提供了相关资源链接以供进一步参考。
摘要由CSDN通过智能技术生成

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参数,不知道怎么可以省掉。

最后贴上一些对我帮助很大的帖子

Neo4j 5.1迁移注意事项 - 知乎 (zhihu.com)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值