#!/bin/bash
#backup MongoDB

#mongodump命令路径
DUMP=/mongodb4.0/bin/mongodump

#临时备份目录
OUT_DIR=/bak/mongobaknow

#备份存放路径
TAR_DIR=/bak/mongobak

#获取当前系统时间
DATE=`date +%Y%m%d%H`

#数据库账号
DB_USER=root

#数据库密码
DB_PASS=123456

#DAYS=7代表删除7天前的备份,即只保留近7天的备份
DAYS=7

#最终保存的数据库备份文件
TAR_BAK="mongobak_$DATE.tar.gz"

cd $OUT_DIR
rm -rf $OUT_DIR/*
mkdir -p $OUT_DIR/$DATE

#备份全部数据库 并输出到$DATE.log日志中
$DUMP -h 172.16.0.101:27017 -u $DB_USER -p $DB_PASS --authenticationDatabase "admin" -o $OUT_DIR/$DATE > $TAR_DIR/mongobak_$DATE.log 2>&1

#压缩为.tar.gz格式
tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE

#删除7天前的备份文件
find $TAR_DIR/ -mtime +$DAYS -delete

#注意:/bak/mongobak、/bak/mongobaknow需要提前创建

MongoDB 4.0 dump备份脚本的更多相关文章

  1. MySQL XtraBackup备份脚本

     #backup.sh #!/bin/sh #on xtrabackup 2.1.8 # 第一次执行它的时候它会检查是否有完全备份,否则先创建一个全库备份 # 当你再次运行它的时候,它会根据脚本中的设 ...

  2. 实战:INNOBACKUPEX for mysql 5.6自己主动备份脚本

    #backup.sh #!/bin/sh # # 第一次运行它的时候它会检查是否有全然备份,否则先创建一个全库备份 # 当你再次执行它的时候.它会依据脚本中的设定来基于之前的全库备份进行增量备份 #o ...

  3. mongodb 备份脚本

    ###############备份脚本#!/bin/bash basepath="/data/backup/dump$(date +%Y%m%d%H%M%S)" if [ ! -d ...

  4. CentOS 7.4通过rpm包离线安装 Mysql8.0并部署主从复制(附从库备份脚本)

    一. 部署MySQL (两个节点都做) 下载 rpm包 wget https://goodrain-pkg.oss-cn-shanghai.aliyuncs.com/mysql8.rpm tar xv ...

  5. Linux下MongoDB备份脚本

    #!/bin/bash today=`date +%Y%m%d` mongodump -h localhost -d salary -o /home/chzhao/mongobackup/$today ...

  6. mongodb 通过mongodump来备份Sharded Cluste分片集群

    1,mongodb所有组件官方文档地址:https://docs.mongodb.com/manual/reference/command/,所有的基础组件都在里面,包括备份恢复的mongodump. ...

  7. 分享一个MySQL分库分表备份脚本(原)

    分享一个MySQL分库备份脚本(原) 开发思路: 1.路径:规定备份到什么位置,把路径(先判断是否存在,不存在创建一个目录)先定义好,我的路径:/mysql/backup,每个备份用压缩提升效率,带上 ...

  8. Windows的Subversion备份脚本

    2015-12-08更新:备份时添加--revision head 只备份最新的版本,已从脚本中移除. 2013-12-09更新:forfiles命令添加错误输出日志. 2013-12-04更新:添加 ...

  9. sql server 数据库模型 备份 恢复 总结 备份脚本

    事务日志是可以基于时间点恢复的,必须在full或bulk_logged模式下 Alter database [DBName] set recover bulk_logged , then the fo ...

  10. SVN全量备份+增量备份脚本

    一.全量备份 环境:一台主SVN,一台备SVN(主要提供备份功能),后续可通过钩子脚本进行实时备份,后续发给大家. 工作原理:通过svn的hotcopy命令过行热备份,并进行一系列的检查,备份后通过r ...

随机推荐

  1. M1芯片使用pod报错 *** for architecture arm64

    1.添加如下配置 pod 和 工程都需要修改 2.Podfile最后添加如下代码 post_install do |installer| installer.pods_project.build_co ...

  2. Linux 搭建Apache(httpd)服务

    简介:Apache HTTP Server是开源软件项目,基于标准的HTTP网络协议提供的网页浏览服务,http是Apache服务器的主程序,它是一个独立的后台进程. 1. 安装 A. 安装httpd ...

  3. mybatis读取blob类型

    mybatis 读取blob数据 mybatis读取blob数据过程: 1.从数据库中读出blob数据类型,用pojo中的byte[]接收. 2.把文件保存成文件(或者变成base64也行). Cus ...

  4. 图片视频二进制流base64加密

    一:读取图片或者视频,转换二进制流,进行Base64加密 @PostMapping("/base64Encoder") public StringBuilder changeIma ...

  5. 利用canvas合并两个海报

    图片1 是个海报,图片2是个二维码,把这个二维码镶嵌到图片1 的指定位置上 function drawAndShareImage(opt, cb) { if (!opt) { console.erro ...

  6. Bert使用

    首先打开网址:https://huggingface.co/models 下载想用的模型

  7. 808.11ac的MAC层

    MAC层是802.11的主要功能部分.上层应用通过调用MAC层提供的接口原语调用MAC层的功能. 在内部,MAC由除了函数还有数据,叫MIB,存储MAC的各种参数.SME是一个单独的模块,用来跟接口函 ...

  8. 小白之Linux基础命令

    命令大全 : http://man.linuxde.net/touch --------------------------20170802晚linux ls--显示当前路径下的文件及文件夹名字cd ...

  9. Robot-Framework 基础操作和常用的语法

    1.打开浏览器 Open Browser 2.浏览器最大化 Maximize Browser Window 3.关闭浏览器 Test Teardown Close Browser 4.输入文本框  I ...

  10. element ui中el-tree文字显示不全解决方案

    // 问题描述 // 在项目中使用element-ui前端框架来开发界面时,使用el-tree组件实现树形菜单,遇到当节点文字过长会出现显示不全的问题 <el-tree ref="tr ...