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 & 即可

选择编辑器

$ select-editor

Select an editor. To change later, run 'select-editor'.
1. /bin/ed
2. /bin/nano <---- easiest
3. /usr/bin/code
4. /usr/bin/vim.basic
5. /usr/bin/vim.tiny

Choose 1-5 [2]: 5

添加任务

crontab -e
0 4 * * * /bin/sh /mnt/backup.sh
:wq //保存

脚本例示

#!/bin/bash
#backup MongoDB

#mongodump命令路径
DUMP=/mnt/mongodb-tools/bin/mongodump
#备份存放路径
TAR_DIR=/mnt/bklist
#获取当前系统时间
DATE=`date +%Y_%m_%d`
#DAYS=15代表删除15天前的备份,即只保留近15天的备份
DAYS=7
#最终保存的数据库备份文件
TAR_BAK="mongodb_bak_$DATE.gz"

$DUMP --uri="mongodb://用户名:密码@192.168.0.5:5643,192.168.0.6:5643,192.168.0.4:5643/数据库名?replicaSet=rs1&readPreference=secondary&authSource=admin" --gzip --archive=$TAR_DIR/$TAR_BAK
#删除7天前的备份文件
find $TAR_DIR/ -mtime +$DAYS -delete
exit

创建备份文件夹

mkdir -p /mnt/bklist

posted @ 2018-10-16 15:47  黎东海  阅读(638)  评论(0编辑  收藏  举报