Backup adds a prefix that includes a timestamp and any specified tags. The prefix allows the listBackups and deleteBackups actions to filter only backups including the specified tags or older than the specified number of days.
I wrote the application to create point-in-time backups via cron job and to delete old backups automatically. I thought is was important to have point-in-time backups in addition to continuous replication in case someone deleted all records in a database. On Wed, Feb 5, 2014 at 4:27 AM, Adam Williams <[email protected]> wrote: > Hello Duncan, > > The utility looks great. I like the use of the COUCHCLI_CONFIG file for > storing host information. > > What is the difference between 'backup' and 'replicate'? It seems that > backup adds a prefix to the databases? > > - Adam > > On Wed, Feb 5, 2014 at 10:35 AM, Andy Wenk <[email protected]> wrote: > > > Hi Duncan, > > > > thanks a lot for the post! I think it would be cool to add the link to > > https://wiki.apache.org/couchdb/CouchDB_tools even though there is > already > > couchdb-utils. The fact that you build something for communicating with > > CouchDB is super cool so it should be mentioned! > > > > Thanks for your contribution > > > > Cheers > > > > Andy > > > > > > On 5 February 2014 03:55, Duncan Scott <[email protected]> wrote: > > > > > I needed a command line tool to manage CouchDB replication. A quick > > survey > > > of existing tools at the CouchDB site and on github didn't turn up > > anything > > > specific to my needs. > > > > > > So I rolled my own light utility: > > > https://github.com/duncanscott/couch-cli > > > > > > > > > $ couch-cli replicate production --all --target backup --continuous > > > skipping _replicator > > > skipping _users > > > 9878f9de1b814649503331e3b8027825 started continuous pull replication of > > > geneusprod.ws_logger to backup.ws_logger > > > 9878f9de1b814649503331e3b8029c45 started continuous pull replication of > > > geneusprod.samples-submission to backup.samples-submission > > > > > > > > > It's also possible to create backups with a prefix generated by the > tool: > > > > > > $ couch-cli backup production --all --target backup --tag weekly > > > skipping _replicator > > > skipping _users > > > 9878f9de1b814649503331e3b802dff5 started pull replication of > > > geneusprod.ws_logger to > > > backup.backup_geneusprod_20140204182434419_weekly_ws_logger > > > 9878f9de1b814649503331e3b8031013 started pull replication of > > > geneusprod.samples-submission to > > > backup.backup_geneusprod_20140204182434562_weekly_samples-submission > > > > > > > > > And then to delete backups with specific tags and/or older than a given > > > number of days. > > > > > > $ couch-cli deleteBackups backup --tag weekly --olderThan 30 > > > > > > > > > Thought it might be of use. > > > > > > You can build the executable using gradle or download an executable > from > > > github. Java is needed to run the executable. > > > https://github.com/duncanscott/couch-cli/release< > > > https://github.com/duncanscott/couch-cli/releases/tag/v2.0> > > > > > > > > > Thanks, Duncan > > > > > > > > > > > > P.S. > > > > > > Taking another look at http://wiki.apache.org/couchdb/CouchDB_tools, > it > > > looks like my application has some functionality similar to that of a > new > > > project (which didn't exist when I wrote mine). > > > > > > https://github.com/awilliams/couchdb-utils > > > > > > > > > > > -- > > Andy Wenk > > Hamburg - Germany > > RockIt! > > > > http://www.couchdb-buch.de > > http://www.pg-praxisbuch.de > > > > GPG fingerprint: C044 8322 9E12 1483 4FEC 9452 B65D 6BE3 9ED3 9588 > > > > https://people.apache.org/keys/committer/andywenk.asc > > >
