couchdb-backup-restore
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
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!');
}
cbr.backup(config, done).pipe(fs.createWriteStream('./db-backup.tar.gz'))
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'],
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