Socket
Socket
Sign inDemoInstall

couchdb-backup-restore

Package Overview
Dependencies
57
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    couchdb-backup-restore

Creates backups of couchdb databases (.tar.gz files containing one .json file per database) and restores from those backups.


Version published
Weekly downloads
24
increased by200%
Maintainers
1
Install size
4.11 MB
Created
Weekly downloads
 

Readme

Source

couchdb-backup-restore NPM version Build Status Dependency Status

Creates backups of couchdb databases (.tar.gz files containing one .json file per database) and restores from those backups.

Also plays nice with Cloudant (hosted CouchDB service).

Limitations

  • This library does not support attachments, right now. It will only back up and restore documents. PR's welcome.

  • This backs up only the current revision (_rev) of each document; backing up and restoring will loose all previous revisions. (This is normal behavior though - to quote the documentation, You cannot rely on document revisions for any other purpose than concurrency control.)

Install

$ npm install --save couchdb-backup-restore

Usage

var cbr = require('couchdb-backup-restore');

var config = {credentials: 'http://localhost:5984'};

function done(err) {
  if (err) {
    return console.error(err);
  }
  console.log('all done!');
}

// backup
cbr.backup(config, done).pipe(fs.createWriteStream('./db-backup.tar.gz'))
  
// restore
fs.createReadStream('./db-backup.tar.gz').pipe(cbr.restore(config, done));

Bluemix / Cloudant example:

var cbr = require('couchdb-backup-restore');
var bluemix = require('bluemix'); 

var config = {
 credentials: bluemix.getService('cloudantNoSQLDB').credentials
}

// or just var config = bluemix.getService('cloudantNoSQLDB');

Configuring

Default options are:

{
  credentials: 'http://localhost:5984',
  excludeDbs: ['_replicator', '_users'], // automatic built-in dbs that you probably don't want to backup
  databases: null
}
  • credentials is passed directly to nano and can be either a straight url or a configuration object.
  • excludeDbs should be an array, although it may be an empty array ([]) if you want to include the built-in _replicator and _users databases.
  • databases may be an array. If set, CBR will only back up the specified DBs, overriding the excludeDbs option.

License

MIT © Nathan Friedly

Keywords

FAQs

Last updated on 26 Feb 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc