neo4j (2)----- neo4j数据导入&多库切换

时间:2024-03-27 09:57:07

如果需要下载我的数据import 文件夹,请:

首先,我先说下准备工作。

1.要有csv文件;

其实如果你的是 xlsx文件,就是 excel默认的存储模式。你只需要把这个文件另存为,选择一个地址,然后存储类型改成csv即可

neo4j (2)----- neo4j数据导入&多库切换

如果你的csv中,没有中文的字符,你做到这样就可以了。如果你有中文字符还存在导入后乱码的问题,你可以在这里处理下,可以先把文件用记事本,打开,然后改成UTF-8格式,用.csv格式保存即可。

2.准备neo4j。

这个我需要说明下,因为我是用cmd导入的文件,所以我安装的是neo4j-community-3.1.0版本,如果需要的请看我另一个文章,如何安装neo4j就可以下载。我之前安装的桌面版本,在导入的时候有点问题。

然后,开始导入

首先保证你的neo4j是关闭状态,否则导入不进去。

然后找到你neo4j的安装目录,如图

neo4j (2)----- neo4j数据导入&多库切换

可以看到一个import的文件夹(如果你的没有,可以自己建立一个)

然后把你的所有csv文件全部放入。下面是我的文件

neo4j (2)----- neo4j数据导入&多库切换

然后在这里我需要明确的说下,我的文件的绝对路径,一会需要,用actor.csv举例子,他的绝对路径是:D:\neo4j\neo4j-community-3.1.0\import

然后点开你的data -- databases, 可以看其中是否有graph.db的文件夹,如果有请删除。(这是第一次导入的时候,因为neo4j默认使用这个数据库的,如果你有,在一会into命令的时候就开始报错,所有请删除)

neo4j (2)----- neo4j数据导入&多库切换

然后打开cmd,先找到你的bin目录下:我的地址是:D:\neo4j\neo4j-community-3.1.0\bin

neo4j (2)----- neo4j数据导入&多库切换

然后开始写入如下的命令:

D:\neo4j\neo4j-community-3.1.0\bin\neo4j-admin import --mode=csv --into D:\neo4j\neo4j-community-3.1.0\data\databases\graph.db --nodes D:\neo4j\neo4j-community-3.1.0\import\director.csv --nodes D:\neo4j\neo4j-community-3.1.0\import\actor.csv --nodes D:\neo4j\neo4j-community-3.1.0\import\film_name.csv --relationships D:\neo4j\neo4j-community-3.1.0\import\acted_in.csv --relationships D:\neo4j\neo4j-community-3.1.0\import\directed.csv --relationships D:\neo4j\neo4j-community-3.1.0\import\cooperation.csv

下面解释下这段文字,请 自行调整

D:\neo4j\neo4j-community-3.1.0\bin\neo4j-admin import

这句,你前面只需要换成你bin的地址就可以,然后有人是neo4j -import,他如果不报错,你就不用家admin

然后是这句,表示是csv格式的数据

--mode=csv

然后是,就是找到你的这个数据库

--into D:\neo4j\neo4j-community-3.1.0\data\databases\graph.db

--into +graph.db的路径

再然后是导入节点,多个节点就加个空格,顺次往后写就可以了

--nodes D:\neo4j\neo4j-community-3.1.0\import\actor.csv

-- nodes + 你的csv的绝对路径(上面提到过,有人有相对路径,但是应该是需要把文件放到bin下面,我不确定,所以绝对路径就可以,如果路径写错会报错,如这篇文章:https://blog.csdn.net/qq_36098284/article/details/88977726

最后是关系

--relationships D:\neo4j\neo4j-community-3.1.0\import\directed.csv

和nodes的道理一样,

然后我还需要说明下,还有很多 其他的参数可以选择,比如,需要请自行百度

neo4j (2)----- neo4j数据导入&多库切换

然后这段命令输入后就可以导入了。我的文件不是很大,里面是豆瓣top250电影的信息。

导入成功的结果是:

neo4j (2)----- neo4j数据导入&多库切换

neo4j (2)----- neo4j数据导入&多库切换

neo4j (2)----- neo4j数据导入&多库切换

到这里就是成功了。

然后启动neo4j就可以,就是在bin中输入neo4j start。

neo4j (2)----- neo4j数据导入&多库切换

成功启动的结果:

neo4j (2)----- neo4j数据导入&多库切换

现在进入到进行http://localhost:7474/browser/ 查看。选择你要查看的内容,注意看最后面,是graph.db的数据库。

neo4j (2)----- neo4j数据导入&多库切换

下面 展示下我的结果: 请注意我标注的地方,只显示了25个。而我之前说了我写了250个进入,其实我不知道什么原因导致,(如果有人知道什么原因可以告诉我)但是我把那句话改写一个就可以了。

neo4j (2)----- neo4j数据导入&多库切换

这是原来:MATCH p=()-[r:`合作`]->() RETURN p LIMIT 25

neo4j (2)----- neo4j数据导入&多库切换

 

改成:

neo4j (2)----- neo4j数据导入&多库切换

显示如图:

neo4j (2)----- neo4j数据导入&多库切换

二.Neo4j多库切换

因为Neo4j的import导入时,只能导入一个不存的db,这就在想创建多个库时,需要去切换,Neo4j默认的库是graph.db,在./conf/neo4j.conf可以修改

#*****************************************************************
# Neo4j configuration
#
# For more details and a complete list of settings, please see
# https://neo4j.com/docs/operations-manual/current/reference/configuration-settings/
#*****************************************************************
 
# The name of the database to mount
#dbms.active_database=graph.db

切换多个库的方法,将新库重新连接到默认库graph.db,然后重启Neo4j 

//软连接
>>>cd ./data/databases/
>>>ln -s graph_kg.db graph.db
 
//重启neo4j
>>>cd $NEO4j_HOME/bin
>>>./neo4j restart
 
// 删除软连接
>>>ln-s test_chk  test_chk_ln
>>>rm -rf  ./test_chk_ln

参考:https://blog.csdn.net/ai_1046067944/article/details/85342494