MongoDB - 建立每日備份 Shell Script
Published in:2022-10-22 | category: MongoDB


Linux 建立每日備份 Shell Script

 #!/bin/sh
 
# Definded Dump Configuartion
rollingDays=7
dumpFilename="mongodb"
dumpTmpDir="/tmp/mongo-dump-tmp"
backupPath="/root/mongo-backup"
username="username"
password="password"
hostname="127.0.0.1"
database="my-mongo"
 
#Start Dumpping.......
today=`date "+%Y-%m-%d"`
echo "Today: ${today}"
echo "Start Dumpping......."
 
# Make backup directory
if ! [ -d "${backupPath}" ] ; then
    echo "make dir : ${backupPath}"
    mkdir -p "${backupPath}"
fi
if ! [ -d "${dumpTmpDir}" ] ; then
    echo "make dir : ${dumpTmpDir}"
    mkdir -p "${dumpTmpDir}"
fi
 
# Make parameter
dn="-h ${hostname}"
if [ "${username}" != "" ] && [ "${password}" != "" ] ; then
    dn="${dn} -u ${username} -p ${password}"
fi
if [ "${databse}" != "" ] ; then
    dn="${dn} -d ${database}"
fi
 
# Run backup script
rm -rf -R ${dumpTmpDir}
command="mongodump ${dn} -o ${dumpTmpDir}"
echo $command
$command
if [ $?:= 0 ] ; then
    cd "${dumpTmpDir}"
    /bin/tar -zcvf "${backupPath}/${dumpFilename}-${today}.tar.gz" *
    find ${backupPath}/${dumpFilename}-* -mtime +{rollingDays} -exec rm -f {} \;
fi
rm -rf -R ${dumpTmpDir}


參考文件


Prev:
MongoDB - 如何備份與還原
Next:
Redis - 安裝 reids-dump 及備份