arangodb主从数据库配置

  • ArangoDB版本2.7.5
  • 启动模式: docker-compose启动
arangodb:
  restart: always
  image: arangodb:2.7.5
  ports:
    - "8529:8529"
  volumes:
    - /data/docker/arangodb/arangodb:/var/lib/arangodb
    - /data/docker/arangodb/arangodb-apps:/var/lib/arangodb-apps

Arangodb主从数据库配置时,主数据是不需要做任何操作,主要是操作从数据库。
一、根据上述yaml脚本启动
二、进入容器输入arangosh进入命令控制台

  • 创建数据库并使用
> db._createDatabase("DataBase_Name");

> db._useDatabase("DataBase_Name");
  • 同步数据,并获取 lastLogTick
> var replication = require("org/arangodb/replication");

> var id = replication.sync({endpoint: "tcp://arangodb_url:arangodb_port", database: "DataBase_Name", async: true});

> print(replication.getSyncResult(id));

:如果返回 false,则说明未完成;如果出现了json格式的结果,则说明完成数据同步,json中有一个字段lastLogTick。

  • 查看数据库 applier 的 state 和 properties 信息:
> require("org/arangodb/replication").applier.properties();
> require("org/arangodb/replication").applier.state();
  • 配置 applier。如果没有指定 database 名称,则默认使用当前使用的 database 名称:
> require("org/arangodb/replication").applier.stop();
> require("org/arangodb/replication").applier.properties({endpoint: "tcp://arangodb_url:arangodb_port", database: "DataBase_Name", verbose: false, includeSystem: true, autoStart: true, autoResync: true, autoResyncRetries: 10, adaptivePolling: true});
  • 启动自动同步(参数是第四步中获取到的 lastLogTick 值):
> require("org/arangodb/replication").applier.start("");

arangodb3的同步在研究中,后续补上

你可能感兴趣的:(centos7,arangodb)