ubuntu16.04之mongodb自動備份
cron服務是Linux的內建服務,但它不會開機自動啟動。可以用以下命令啟動和停止服務:
service cron start service cron stop service cron restart service cron reload
service cron status
如果未能正常使用以以下命令啟用服務
sudo systemctl enable cron.service; sudo systemctl start cron.service
相關使用指令引數
檢視當前使用者的crontab,輸入 crontab -l;
編輯crontab,輸入 crontab -e;
刪除crontab,輸入 crontab -r
開機自啟動
要把cron設為在開機的時候自動啟動,在 /etc/rc.local 指令碼中加入 service cron start & 即可
指令碼例示
#!/bin/bash
#backup MongoDB#mongodump命令路徑
DUMP=mongodump
#臨時備份目錄
OUT_DIR=/mnt/backup
#備份存放路徑
TAR_DIR=/mnt/bklist
#獲取當前系統時間
DATE=`date +%Y_%m_%d`
#資料庫賬號
DB_USER=資料庫使用者名稱
#資料庫密碼
DB_PASS=資料庫密碼
#DAYS=7代表刪除7天前的備份,即只保留近7天的備份
DAYS=7
#最終儲存的資料庫備份檔案
TAR_BAK="mongodb_bak_$DATE.tar.gz"cd $OUT_DIR
rm -rf $OUT_DIR/*
mkdir -p $OUT_DIR/$DATE
#備份全部資料庫
$DUMP -h 127.0.0.1:27017 -u $DB_USER -p $DB_PASS --authenticationDatabase "admin" -d "dbname" -o $OUT_DIR/$DATE
#壓縮為.tar.gz格式
tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE
#刪除15天前的備份檔案
find $TAR_DIR/ -mtime +$DAYS -delete
rm -rf $OUT_DIR/*
exit
建立備份資料夾
mkdir -p /mnt/backup mkdir -p /mnt/bklist