neo4j3.0多数库切换
动机
类似与关系型数据库,创建了多个数据库 想要像访问关系型数据库那样来可以无缝切换多个数据库
然而,在neo4j 3.0都暂时没有办法做到:每次启动neo4j,它只能读取一个数据库。
比如,现在有两个数据库graph.db,graph2.db。假设neo4j默认的数据库为graph.db,启动neo4j,这时候想要访问graph2.db,必须修改neo4j的配置文件,将数据库改为graph2.db,重启,此时才可以访问graph2.db.
那么,如何可以比较neat地切换数据库呢?
方法
方法一:修改配置文件
这是官方文档方法
大概思路是:
新建一个conf_test文件 修改neo4j.conf:
# The name of the database to mount dbms.active_database=graph2.db //你的数据库
将新的neo4j的配置文件的路径设为当前session的环境变量。 重启neo4j
问题 来了,我每次都要先新建一个conf文件夹,修改conf文件,再设置环境变量,据麻烦!!!
方法二:建立graph.db的软连接或者备份【推荐!!!】
不需要修改配置文件,不需要设置环境变量
对于Linux:
首次修改:
// 请将$NEO4j_HOME改为你的neo4j的安装路径 cd $NEO4j_HOME/data/databases/ // 保存原来数据库 mv graph.db graph1.db //建立指向新数据库的软件接 ln -s graph2.db graph.db //重启neo4j cd $NEO4j_HOME/bin ./neo4j restart
再次修改
倘若我想访问graph3.db,就很简单了
//建立指向新数据库的软件接 ln -s graph3.db graph.db //重启neo4j cd $NEO4j_HOME/bin ./neo4j restart
对于Windows:
首次修改:
// 保存原来数据库 graph.db 复制一份命名 graph1.db //重启neo4j cd $NEO4j_HOME/bin ./neo4j restart
再次修改
倘若我想访问graph2.db,就很简单了
//关闭neo4j cd $NEO4j_HOME/bin ./neo4j stop // 保存原来数据库 graph2.db 复制重命名 graph.db //启动neo4j cd $NEO4j_HOME/bin ./neo4j start