梧莞

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一.neo4j的安装(参考https://www.cnblogs.com/ljhdo/archive/2017/05/19/5521577.html

简单说一下neo4j,它存储的图是由顶点(节点node),边(关系relationship)和属性(property)组成的,顶点和边都可以设置属性(一个或多个),它有自己的查询语言cypher,且它目前有很多接口(驱动driver)可以配合其他语言(例如python使用)

ps:笔者是纯小白,怕自己忘东西就记录下自己的安装使用过程,也希望有不对的地方能多多交流(怂)。

1.neo4j是一个图数据库,它的运行依赖java环境,所以在安装neo4j之前要安装JAVA SE(standard edition)的JRE;去Oracle官网下载JDK(JDK包含JRE,JRE提供环境,JDK可以支持开发Java程序)https://www.oracle.com/java/technologies/javase-downloads.html

 现在jdk的版本最新到14.0.2了,往下拉网页还有之前的版本的

jdk的版本与neo4j是要对应的。笔者下载的neo4j版本是4.1.0(现在最新的是4.1.1);4.1.0版本的neo4j对应的jdk版本要在11或11以上,笔者下载的是11。

 看好jdk版本,点击jdk download进入下载界面,根据自己的系统选择安装具体的安装程序或压缩包。

下载下来之后安装上就行,一路选择默认路径和选项。

安装好了之后就是配置环境变量了。系统环境变量和用户环境变量都配置。

---先新建JAVA_HOME变量,变量的值就是jre的安装目录

ps: 如果你对我为什么有好几个JAVA_HOME?因为我一开始是安装的jdk 8,后老发现对应不上最新版的neo4j,没办法又下载了一个Jdk 11,原来的jdk版本不想删除怎么办?查度娘,找经验,把环境变量改了,文件夹名字变一变,就这样了。(具体过程不细说,感兴趣可以自己查一查)

----然后还要配置path变量,在path变量值最后输入

%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

 最后检查配置成功了没,运行cmd,输入java -veision,如果命令行返回了java的版本信息,恭喜你这几步都对了。(这里我进入的是管理员权限的cmd,我进入没有权限的cmd输入命令会出现错误,可能是因为我的jre在Program Files文件夹的关系)(有懂的人可以告诉我)

 2.我们终于可以开始安装neo4j了。

我们当然可以去官网下载neo4j,但是下载速度灰常慢。甚至网页有时候都打不开。

这时我们可以去“neo4j 中文社区的下载地址http://we-yun.com/index.php/blog/releases-56.html

 安装过程中的疑问也可以在下面留言,如果被看到了会有人解答的。



 http://doc.we-yun.com:1008/neo4j-doc/4.0

这个网址是有技术文档,可以按需要下载。

我下载了neo4j的社区版本,安装在Program Files文件夹下。

配置一下neo4j的环境变量:

 

会有一个neo4j-community-4.1.0的文件夹,其中的bin目录是用来存储可执行程序,从管理员权限的cmd来使用neo4j的时候都要进入这个文件夹。

conf文件夹是一个配置文件。

data文件夹是存储你的数据,里面有两个子文件夹,databases里有一个system文件夹,如果在控制台输入了neo4j.bat console命令,就会自动生成一些文档,还会多出来一个neo4j文件夹,是生成的一个默认数据库。

plugins目录会存储neo4j的插件。介绍完毕,下面就是第三步

3.neo4j的配置文件

打开neo4j-community-4.1.0文件夹下的conf文件夹,里面的配置文档,用记事本就可以打开并编辑。把以下语句前面的#去掉

 

 

 

 这样做是为了允许远程主机的访问

4.打开cmd(管理员权限)

到bin目录下输入neo4j.bat console

如果没有报错,返回了INFO Started信息,就是neo4j已经启动了

把neo4j安装为服务要输入neo4j install-service

卸载服务就用neo4j uninstall-service

安装为服务之后,启动服务用neo4j start

重启是neo4j restart

关闭是neo4j stop

查询服务状态是neo4j status

5. neo4j服务启动之后就可以利用neo4j集成的浏览器访问管理图数据库

在一个运行neo4j服务器主机上访问 “http://localhost:7474/”,显示以下的界面:(emmm,没导入数据的时候图中没有节点)

放这个图先意思一下。进入之后会要求你输入用户名和密码,默认都是neo4j。输入之后改密码。

如果有一天你的密码自己忘记了也没关系,neo4j的data的databases文件夹里的system文件夹里,除了schama,把别的文件删掉,再重新console,密码就又重新设置为neo4j了。

因为在数据导入(用的是neo4j-admin)走了超级多弯路,所以自己琢磨的,推测用户的新密码就保存在那里,删掉之后就一切回归默认设置。如果你怕失败,可以先把要删除的文件转移到别的地方试试。

浏览器中的这个界面上面的命令行就需要你用cypher语言来输入命令了。

如果你什么都不会也没关系,可以走浏览器中已经有的范例,有一个是电影的范例,另一个范例要在网址上下载数据,我没有运行成功。

 

 

 6.导入数据的命令是

(依旧是管理员权限的cmd目录)

neo4j-admin import --database=neo4j1 --multiline-fields=true --nodes=:Name=C:\node.csv --skip-duplicate-nodes=true --relationships=:Rel=C:\rel.csv --skip-bad-relationships=true
很坑
我自己卡在这个地方很久很久不知道出了什么问题
一度接近崩溃
网上有很多示例,包括一向讨厌看官方技术文档(纯英文)的我硬着头皮把4.1的技术文档B2部分看了好几遍
按照上面的指令写也没有用
我只能怀疑这个技术文档没有更新
但其实命令行是有提示的:在我每次输入错误的导入命令的时候都会提示我格式究竟是怎么样的:

 

 emmm这么长一串!丢!

然后各种查查查,发现括号里是可选的。所以至少,要导进去nodes(把所有方括号的内容去掉就剩下了“--nodes=<files>”)

当然我其实也没有实验这个;我要把我的节点和关系一起导入。总之最后终于是实验对了。

当然输入这个命令之前你要检查:

A.文件格式:是不是csv?

(如果是别的文件格式其实也可以啦,不就是分隔符不是逗号嘛,neo4j也有相应的命令可以帮你,但是默认支持的是csv,相应命令什么的在这里不细说,可以查官方文档或者看别人经验,因为我么有尝试过)

B.你要导入的那个数据库是不是空的文件夹?

你把数据导进去,系统会默认把数据信息生成一些文件(保存节点和关系之类的),这些文件默认存在..data\databases\neo4j文件夹中。

所以如果你不设置你的数据要导入哪里的话,默认导入neo4j,导入前你就要检查一下neo4j这个文件夹是不是空的。一定要确保是空的,否则数据进不去。

我查的很多别人的说明都说有个graph.db文件夹,但是我这里是neo4j文件夹。

C.你的文件数据每一列有标题吗?

 

 如果是节点文件,需要有:ID这样的标题;如果是关系文件,需要有:START_ID,:TYPE,:END_ID这样的标题头

好让neo4j知道你这个数据到底是怎么回事,谁是节点谁是关系之类的。

好了,以上,就是这样。

 
 
posted on 2020-07-26 12:03  梧莞  阅读(1688)  评论(0)    收藏  举报