NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
环境 操作系统: Centos 7 ####mongodb备份shell脚本 ```` #!/bin/sh # dump 命令执行路径,根据mongodb安装路径而定 DUMP=/usr/bin/mongodump # 临时备份路径 OUT_DIR=/data/backup/mongod_bak/mongod_bak_now # 压缩后的备份存放路径 TAR_DIR=/app/backup/mongod_bak/mongod_bak_list # 当前系统时间 DATE=`date +%Y-%m-%d` # 数据库账号 #DB_USER=admin # 数据库密码 #DB_PASS=Dinw^0#(77E)wt[V # 代表删除7天前的备份,即只保留近 7 天的备份 DAYS=7 # 最终保存的数据库备份文件 TAR_BAK="mongod_bak_$DATE.tar.gz" cd $OUT_DIR rm -rf $OUT_DIR/* mkdir -p $OUT_DIR/$DATE $DUMP -h 127.0.0.1:27017 -d 数据库 -o $OUT_DIR/$DATE # 压缩格式为 .tar.gz 格式 tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE # 删除 15 天前的备份文件 find $TAR_DIR/ -mtime +$DAYS -delete exit ```` 二、创建对应的备份目录 ```` mkdir -p /appapp/backup/mongodb_bak/mongodb_bak_now mkdir -p /app/backup/mongodb_bak/mongodb_bak_list ```` 三、修改文件属性,使其可执行 ```` chmod +x MongoDB_bak.sh ```` 四、添加到计划任务 cron服务是Linux的内置服务,但它不会开机自动启动。可以用以下命令启动和停止服务: ```` /sbin/service crond start /sbin/service crond stop /sbin/service crond restart /sbin/service crond reload ```` 以上1-4行分别为启动、停止、重启服务和重新加载配置。 要把cron设为在开机的时候自动启动,在 /etc/rc.d/rc.local 脚本中加入 /sbin/service crond start 即可 查看当前用户的crontab,输入 crontab -l; 编辑crontab,输入 crontab -e; 删除crontab,输入 crontab -r 1 进入编辑界面 ```` crontab -e ```` 2 添加任务 ```` 30 18 * * * /home/crontab/mongobk.sh ```` 基本格式 : ````         *  command 分 时 日 月 周 命令 第1列表示分钟1~59 每分钟用或者 /1表示 第2列表示小时1~23(0表示0点) 第3列表示日期1~31 第4列表示月份1~12 第5列标识号星期0~6(0表示星期天) ```` 3 保存后退出,启动服务 ```` service crond start ```` 4 设置开机自启动 ```` chkconfig crond on ````