本文共 1525 字,大约阅读时间需要 5 分钟。
之前搞比赛有用到Neo4j,随手做了些记录,在这里分享一下
我使用的Nej4j要求JDK11以上,不然会报错:
ERROR! Neo4j cannot be started using java version 1.8.0_261. * Please use Oracle(R) Java(TM) 11, OpenJDK(TM) 11 to run Neo4j.* Please see https://neo4j.com/docs/ for Neo4j installation instructions.
在直接下载JDK11的deb版本,然后使用gedit ~/.bashrc
设置环境变量
#set oracle jdk environmentexport JAVA_HOME=/usr/lib/jvm/jdk-11.0.8 ## 换成/usr/lib/jvm/下的jdk路径export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH
重新打开一个终端,执行java --version
,输出如下
java 11.0.8 2020-07-14 LTSJava(TM) SE Runtime Environment 18.9 (build 11.0.8+10-LTS)Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.8+10-LTS, mixed mode)
表明安装成功
下载地址:
tar -xf neo4j-community-4.1.1-unix.tar.gz
然后使用下面的命令开启数据库
cd ./neo4j-community-4.1.1./bin/neo4j console
点击,即可打开Neo4j可视化界面
neo4j的数据由节点、边(关系)、属性构成,节点以及边都能包含值的属性
首先需要在本地开启一个neo4j数据库,然后使用下面的命令删除数据库以往的图
MATCH (n) DETACH DELETE n
在python中使用py2neo
库来调用neo4j,使用下面的命令来连接数据库
from py2neo import *graph = Graph("http://localhost:7474",username="neo4j",password="ghowoght")
主要有创建节点(Node)和关系(Relationship)函数。用法如下:
# 以下代码创建了两个节点,其中Person表示标签(label),name和age是属性node0 = Node('Person' , name = 'Alice')node1 = Node('Person' , name = 'Bob') node0['age'] = 20node1['age'] = 25 graph.create(node0)graph.create(node1)# 以下代码创建上述两个节点的关系node0_know_node1 = Relationship(node0 , 'know' , node1)graph.create(node0_know_node1)node1_know_node0 = Relationship(node1 , 'know' , node0)graph.create(node1_know_node0)
转载地址:http://vmvgn.baihongyu.com/