#!/bin/bash
DATESTAMP=$(date +%Y%m%d_%H%M)
LOG_FILE=/var/log/mongodb_backup/mongodb_backup.log
[[ ! -d /var/log/mongodb_backup ]] && mkdir /var/log/mongodb_backup
set -x
exec >${LOG_FILE} 2>&1
PID=$$
PID_FILE=/var/run/db_backup.pid
DB_HOST= DB_HOST_IP
DB_NAME='DB_NAME'
DUMP_PATH=/mongobck/tmp
DUMP_NAME=${DB_NAME}_${DATESTAMP}
S3_PATH='s3://mongodb-backups/'
LOGGER_TAG='mongodb_backup'
echo ""
echo "$(date): Starting MongoDB Backup"
[[ -f ${PID_FILE} ]] && (logger -sit ${LOGGER_TAG} "Instance of script already running. Exiting." && exit 99)
echo ${PID} > ${PID_FILE}
# Perform dump of mongo db
logger -sit "${LOGGER_TAG}" "Starting MongoDB backup of ${DB_NAME}"
/usr/bin/mongodump -h ${DB_HOST} --out ${DUMP_PATH}
logger -sit "${LOGGER_TAG}" "MongoDB Dump return $?."
# Compress mongo db
cd /mongobck/
tar -czvf ${DUMP_NAME}.tgz ${DUMP_PATH} && rm -rf ${DUMP_PATH}/*
# Copy compressed mongo db dump to s3
aws s3 cp /mongobck/${DUMP_NAME}.tgz ${S3_PATH} && rm -rf /mongobck/${DUMP_NAME}.tgz
logger -sit "${LOGGER_TAG}" "Backup of MongoDB completed successfully."
echo "$(date): MongoDB Backup Complete"
rm -f $PID_FILE
exit 0
DATESTAMP=$(date +%Y%m%d_%H%M)
LOG_FILE=/var/log/mongodb_backup/mongodb_backup.log
[[ ! -d /var/log/mongodb_backup ]] && mkdir /var/log/mongodb_backup
set -x
exec >${LOG_FILE} 2>&1
PID=$$
PID_FILE=/var/run/db_backup.pid
DB_HOST= DB_HOST_IP
DB_NAME='DB_NAME'
DUMP_PATH=/mongobck/tmp
DUMP_NAME=${DB_NAME}_${DATESTAMP}
S3_PATH='s3://mongodb-backups/'
LOGGER_TAG='mongodb_backup'
echo ""
echo "$(date): Starting MongoDB Backup"
[[ -f ${PID_FILE} ]] && (logger -sit ${LOGGER_TAG} "Instance of script already running. Exiting." && exit 99)
echo ${PID} > ${PID_FILE}
# Perform dump of mongo db
logger -sit "${LOGGER_TAG}" "Starting MongoDB backup of ${DB_NAME}"
/usr/bin/mongodump -h ${DB_HOST} --out ${DUMP_PATH}
logger -sit "${LOGGER_TAG}" "MongoDB Dump return $?."
# Compress mongo db
cd /mongobck/
tar -czvf ${DUMP_NAME}.tgz ${DUMP_PATH} && rm -rf ${DUMP_PATH}/*
# Copy compressed mongo db dump to s3
aws s3 cp /mongobck/${DUMP_NAME}.tgz ${S3_PATH} && rm -rf /mongobck/${DUMP_NAME}.tgz
logger -sit "${LOGGER_TAG}" "Backup of MongoDB completed successfully."
echo "$(date): MongoDB Backup Complete"
rm -f $PID_FILE
exit 0
Комментариев нет:
Отправить комментарий