Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/internalfx/arangler

An ArangoDB management tool
https://github.com/internalfx/arangler

Last synced: about 2 months ago
JSON representation

An ArangoDB management tool

Awesome Lists containing this project

README

        

# Arangler

### An ArangoDB management tool.

[![npm version](https://img.shields.io/npm/v/@internalfx/arangler.svg)](https://www.npmjs.com/package/@internalfx/arangler) [![license](https://img.shields.io/npm/l/@internalfx/arangler.svg)](https://github.com/internalfx/arangler/blob/master/LICENSE)

A command line tool to ease development and administration.

### FAQ

_Doesn't ArangoDB already have `dump` and `restore` commands for handling this?_

Arangler's `sync` command can dump and restore in one step (even to remote databases). `sync` can also target a different database on the same server. It runs a hashing function on the collections in both databases and only modifies the data that is different, saving tons of bandwidth and time.

---

Special thanks to [Arthur Andrew Medical](http://www.arthurandrew.com/) for sponsoring this project.

Arthur Andrew Medical manufactures products with ingredients that have extensive clinical research for safety and efficacy. We specialize in Enzymes, Probiotics and Antioxidants.

---

### Installation.

Requires nodejs v8+

`npm install -g @internalfx/arangler`

## Documentation

### Synchronize two ArangoDB databases.

`arangler sync` Synchronizes collections, indexes and data from the source database to the target database. The target database is modified to match the source.

```bash
Arangler Sync
==============================

Sync two ArangoDB databases.

Usage:
arangler sync [options]
arangler sync --sh host[:port] --th host[:port] --sd dbName --td dbName
arangler sync -h | --help

Options:
--sh, --sourceHost= Source host, defaults to 'localhost:8529'
--th, --targetHost= Target host, defaults to 'localhost:8529'
--sd, --sourceDB= Source database
--td, --targetDB= Target database

--pc, --pickCollections= Comma separated list of collections to sync (whitelist)
--oc, --omitCollections= Comma separated list of collections to ignore (blacklist)
Note: '--pc' and '--oc' are mutually exclusive options.

--user Source and Target username
--password Source and Target password

--su Source username, overrides --user
--sp Source password, overrides --password

--tu Target username, overrides --user
--tp Target password, overrides --password
```