创建Mongodb数据库备份目录

mkdir -p ~/backup/mongod_bak/mongod_bak_now
mkdir -p ~/backup/mongod_bak/mongod_bak_list

新建Mongodb数据库备份脚本

mkdir ~/crontab/ && vi ~/crontab/mongod_bak.sh #新建文件,输入以下代码

#!/bin/sh
DUMP=~/mongodb-linux-x86_64-4.0.1/bin/mongodump # mongodump备份文件执行路径
OUT_DIR=~/backup/mongod_bak/mongod_bak_now # 临时备份目录
TAR_DIR=~/backup/mongod_bak/mongod_bak_list # 备份存放路径
DATE=`date +%Y_%m_%d` # 获取当前系统时间
DB_USER=youuser # 数据库账号
DB_PASS=youpassword # 数据库密码
DB_NAME=diary # 要备份的数据恢复库名字
DAYS=30 # DAYS=30代表删除30天前的备份,即只保留最近30天的备份
TAR_BAK="mongod_$DB_NAME_bak_$DATE.tar.gz" # 最终保存的数据库备份文件名
cd $OUT_DIR
rm -rf $OUT_DIR/*
mkdir -p $OUT_DIR/$DATE
$DUMP -h 127.0.0.1 --port 27017 -u $DB_USER -p $DB_PASS -d $DB_NAME -o $OUT_DIR/$DATE # 备份全部数据库
tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE # 压缩为.tar.gz格式
find $TAR_DIR/ -mtime +$DAYS -delete # 删除天前的备份文件
chmod +x ~/crontab/mongod_bak.sh #修改文件属性,使其可执行
crontab -e # 修改/etc/crontab #添加计划任务
# 在下面添加
30 4 * * * sh ~/crontab/mongod_bak.sh #表示每天凌晨4点30执行备份
# 30 4 * * * sh ~/crontab/mongod_bak.sh >/dev/null 2>&1 # 在命令后添加 `>/dev/null 2>&1` 则不发送日志到邮件。

重新启动crond使设置生效

/sbin/service crond reload #重新载入配置
chkconfig --level 35 crond on #加入开机自动启动:
/sbin/service crond start #启动服务
crontab -l #列出crontab文件

恢复备份

./mongorestore -h 127.0.0.1 --port 27017 -u youuser -p youpassword -d diary ~/backup/mongod_bak/mongod_bak_now/

修改 linux 时区

如果时区不一样, 会造成转换的麻烦或理解错误。

date  #查看时间和日期
cal #查看日历
ll /etc/localtime #查看目前所用时区
timedatectl list-timezones |grep Shanghai #查找中国时区的完整名称
timedatectl set-timezone Asia/Shanghai #以完整名称修改时区
date -s 11/03/2009 #设置日期
date -s 17:55:55 #设置日间
hwclock -w #写入当前时间日期到 bios 避免重启失效
clock -w #写入当前时间日期到 CMOS

定时任务

当 crond 执行任务失败时会给用户发一封邮件

cat /var/log/cron # 查看定时任务的执行列表
cat /var/spool/mail/root # 查看定时任务发送给用户的邮件, 可看执行情况

最新文章

  1. C# Winform防止一个程序重复运行
  2. angular手势事件之on-Hold
  3. CSS选择器详解
  4. JS之模块模式应用
  5. 反射 reflect 初始学习
  6. CentOS目录树详细解释
  7. Understanding GC pauses in JVM, HotSpot's minor GC.
  8. linux杂记(一)各硬件装置在linux中的代号
  9. ES6新特性简介
  10. Java--调试--单步调试,断言,单元测试
  11. CodeFirst 初恋
  12. js jquery 实现html页面之间参数传递(单一参数、对象参数传递)
  13. Cesium之球心坐标与本地坐标
  14. vscode前端常用插件推荐,搭建JQuery、Vue等开发环境
  15. twig模板的进一步学习以及在symfony当中的使用
  16. 2019.01.22 zoj3583 Simple Path(并查集+枚举)
  17. 2018.11.24 spoj New Distinct Substrings(后缀数组)
  18. 《Effective C++》 目录:
  19. ARP监控工具ARPalert
  20. hdu1847sg函数

热门文章

  1. 关于SSD Trim功能
  2. 我的FPGA之旅4---led流水灯
  3. 10个Python基础练习项目,你可能不会想到练手教程还这么有趣
  4. Mysql事务隔离级别学习
  5. js优化 前端小白适用
  6. 用html5实现音频播放器
  7. linux 笔记 第一天
  8. 18.11.20-C语言练习-根据输入统计字符类型
  9. Excel VBA附合导线平差自动计算表
  10. turtle画王思聪吃热狗(杨艳春,何金凝小组)