Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- ARCHIVE=/backup
- REPO=local
- HOST=localhost
- USERNAME=Administrator
- PASSWORD=password
- THREADS=4
- RESTOREPOINTS=3
- CBBACKUPMGR=/opt/couchbase/bin/cbbackupmgr
- BACKUPREGEX="[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}_[0-9]{2}_[0-9]{2}.[0-9]{9}Z"
- # Running backup
- CMD="${CBBACKUPMGR} backup --archive ${ARCHIVE} --repo ${REPO} --host couchbase://${HOST} --username ${USERNAME} --password ${PASSWORD} --threads ${THREADS}"
- echo -e "Running backup...\nCommand: ${CMD}"
- $CMD
- # Compacting the backup
- BACKUPLIST=$(${CBBACKUPMGR} list --archive ${ARCHIVE} --repo ${REPO} | awk '{print $NF}' | grep -E ${BACKUPREGEX})
- LASTBACKUP=$(echo "${BACKUPLIST}" | sed '$!d')
- CMD="${CBBACKUPMGR} compact --archive ${ARCHIVE} --repo ${REPO} --backup ${LASTBACKUP}"
- echo -e "Compacting the backup...\nCommand: ${CMD}"
- $CMD
- # Merging old backups
- COUNT=$(echo "${BACKUPLIST}" | wc -l)
- if [ "$COUNT" -gt "$RESTOREPOINTS" ]; then
- START=$(echo "${BACKUPLIST}" | sed -n 1p)
- END=$(echo "${BACKUPLIST}" | sed -n $((1+COUNT-RESTOREPOINTS))p)
- CMD="${CBBACKUPMGR} merge --archive ${ARCHIVE} --repo ${REPO} --start ${START} --end ${END}"
- echo -e "Merging old backups...\nCommand: ${CMD}"
- $CMD
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement