1.neo4j高可用集群(HA)

1.1 准备

准备三台机子,ip如下:

192.168.2.24(master)

192.168.2.26

192.168.2.27

1.2 安装Neo4j

# 解压neo4j安装包
tar xzf neo4j-enterprise-3.5.4-unix.tar.gz

1.3 集群配置

修改“neo4j安装目录/conf/neo4j.conf”文件

1.3.1 192.168.2.24配置

# 配置之后机子才可以互联
dbms.connectors.default_listen_address=192.168.2.24

dbms.mode=HA

# id为1表示主节点,不同机子不能相同
ha.server_id=1
# 集群的三台机子
ha.initial_hosts=192.168.2.24:5001,192.168.2.26:5001,192.168.2.27:5001

1.3.2 192.168.2.26配置

# 配置之后机子才可以互联
dbms.connectors.default_listen_address=192.168.2.26

dbms.mode=HA

# id为1表示主节点,不同机子不能相同
ha.server_id=2
# 集群的三台机子
ha.initial_hosts=192.168.2.24:5001,192.168.2.26:5001,192.168.2.27:5001

1.3.3 192.168.2.27配置

# 配置之后机子才可以互联
dbms.connectors.default_listen_address=192.168.2.27

dbms.mode=HA

# id为1表示主节点,不同机子不能相同
ha.server_id=3
# 集群的三台机子
ha.initial_hosts=192.168.2.24:5001,192.168.2.26:5001,192.168.2.27:5001

1.3.4 load图

只要在主节点load,会自动同步到其他节点。

./neo4j-admin import -database 1400w.db -nodes: ../import/1400w/Vertex_个人.csv -relationships: ../import/1400w/Edge_个人-个人-关注.csv

2.安装算法包(algo)

算法包Github:https://github.com/neo4j-contrib/neo4j-graph-algorithms/releases

  1. 下载相应版本jar,放到”neo4j安装目录/plugins“下;

  2. 修改“neo4j安装目录/conf/neo4j.conf”文件,添加如下内容:
    (后来发现非必须,没有配置这个也行)

dbms.security.procedures.unrestricted=algo.*
  1. 重启Neo4j,输入如下命令,输出算法列表既安装成功。
CALL algo.list()

3.安装apoc

apoc的github地址:https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases

  1. 下载相应版本jar,放到”neo4j安装目录/plugins“下;

  2. 修改“neo4j安装目录/conf/neo4j.conf”文件,添加如下内容:
    (后来发现非必须,没有配置这个也行)

dbms.security.procedures.unrestricted=apoc.*

# 如果需要同时安装algo包
dbms.security.procedures.unrestricted=algo.*,apoc.*
  1. 重启Neo4j,输入如下命令,输出算法列表既安装成功。
return apoc.version()

4.设置查询超时

unsupported.dbms.executiontime_limit.enabled=true
unsupported.dbms.executiontime_limit.time=1h