mongodb数据库自动备份
数据对我们现在应用系统越来越重要,这就驱使我们必须去做的一件事就是冗余备份,保证数据的完整性和可恢复性。既然如此重要,我们就必须去备份,但如果手动去做的话,不仅浪费时间,也可能导致数据丢失。最好的方式当然是自动实现备份,本次主要说mongodb数据库的自动备份。
实现思路:
1)创建备份文件存放的文件夹
2)编译脚本实现备份
3)设置定时任务实现定时备份
1、创建mongodb备份目录
mkdir -p /mongodb/data/mongodb_bak/mongodb/data/mongodb_bak (临时备份文件存放地址)
mkdir -p /mongodb/data/mongodb_bak/mongodb/data/mongodb_list (备份文件存放地址)
2、新建mongodb数据库备份脚本
1. #!/bin/bash
2. #backup MongoDB
3.
4. #mongodump命令路径
5. DUMP=/usr/local/mongodb/bin/mongodump
6. #临时备份目录
7. OUT_DIR=/mongodb/data/mongodb_bak/mongodb_bak_now
8. #备份存放路径
9. TAR_DIR=/mongodb/data/mongodb_bak/mongodb_bak_list
10. #获取当前系统时间
11. DATE=`date +%Y_%m_%d`
12. #数据库账号
13. DB_USER=user
14. #数据库密码
15. DB_PASS=123
16. #DAYS=15代表删除15天前的备份,即只保留近15天的备份
17. DAYS=15
18. #最终保存的数据库备份文件
19. TAR_BAK="mongodb_bak_$DATE.tar.gz"
20.
21. cd $OUT_DIR
22. rm -rf $OUT_DIR/*
23. mkdir -p $OUT_DIR/$DATE
24. #备份全部数据库
25. $DUMP -h 15.62.32.112:27017 -u $DB_USER -p $DB_PASS --authenticationDatabase "admin" -o $OUT_DIR/$DATE
26. #压缩为.tar.gz格式
27. tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE
28. #删除15天前的备份文件
29. find $TAR_DIR/ -mtime +$DAYS -delete
30.
31. exit
3、修改文件属性
chmod +x mongoDB_bak.sh
4、修改/etc/crontab,添加定时任务
vi /etc/crontab
#每星期六晚上0:0开始执行MongoDB数据库备份脚本
0 0 * * 6 root /mongodb/data/mongodb_bak/mongoDB_bak.sh
mongodb数据库自动备份相关推荐
- centos下MongoDB数据库自动备份(linux)
centos下没有可视化工具,这个时候对MONGODB数据库进行备份,我们需要借助脚本和定时任务来进行. 1.创建MongoDB备份目录 我们创建一个当前备份和备份列表文件夹 mkdir -p /da ...
- 用shell脚本实现MongoDB数据库自动备份
一.创建MongoDB备份目录 用来存放数据 mkdir -p /data/mongodb_bak/mongodb_bak_now mkdir -p /data/mongodb_bak/mongodb ...
- Linux oracle数据库自动备份自动压缩脚本代码
Linux oracle数据库自动备份自动压缩脚本代码 Linux oracle数据库备份完成后可以自动压缩脚本代码. 复制代码代码如下: #!/bin/bash #backup.sh #edit: ...
- 挺好用的SQLSERVER数据库自动备份工具SQLBackupAndFTP(功能全面)
挺好用的SQLSERVER数据库自动备份工具SQLBackupAndFTP(功能全面) 原文:挺好用的SQLSERVER数据库自动备份工具SQLBackupAndFTP(功能全面) 挺好用的SQLSE ...
- oracle数据库自动备份
oracle数据库自动备份 环境:windows server2008操作系统,oracle 10.2.0数据库 工具:windows命令窗口 ,windows任务计划 命令:exp profile ...
- mysql学习之旅-数据库自动备份-测试环境搭建
#终于知道什么叫不会走先会跑了,刚开始接触第一个case就是数据库自动备份,我可是都没安装过啊?! 发完牢骚开始干活 首先,因为业务已经上线,不能随便动,先搭建测试环境吧 规划一下 版本:mysq ...
- 数据库自动备份还原成新库脚本
数据库自动备份还原成新库脚本 BACKUP DATABASE [源数据库名] TO DISK = N'G:\testbackup.bak' WITH COMPRESSION,NOUNLOAD , NA ...
- delphi Oracle导出多个表,Oracle数据库自动备份工具(Delphi源码)
Oracle数据库自动备份工具(Delphi源码) 下载地址:http://www.blogjava.net/Files/96sd2/OraSvr.rar 『OracleBackupService』简 ...
- db2数据备份到mysql_DB2数据库自动备份详解
DB2数据库自动备份详解 由脱机备份转换为联机备份: 在db2CMD下执行 1.连接需要备份的数据库:db2 connect to数据库名称 2.修改自动数据库备份(AUTO_DB_BACKUP)参数 ...
最新文章
- Docker+Jenkins持续集成环境(3)集成PMD、FindBugs、Checkstyle静态代码检查工具并邮件发送检查结果...
- @NotEmpty,@NotNull和@NotBlank的区别
- CString类的用法总结
- C++/CLI中的资源清理(Destructor,Finalizer)
- 微信群「斗图」总输,Python助我超神!
- Typescript常见三种函数类型
- ImageView缩放选项
- C#中split分隔字符串的应用
- 查看Redis集群所有节点内存工具
- element icon图标方向旋转
- 《南溪的目标检测学习笔记》——COCO数据集的学习笔记
- SpringBoot自定义注解接收json参数
- 传智播客总裁黎活明“传智专修学院成立暨揭牌仪式”演讲实录
- android蓝牙红外,单片机蓝牙+红外学习转发模块源程序 实现用安卓手机控制所有家电...
- Python的eval函数详解
- TCP/IP原理浅析
- 桃词典 Peach Dictionary 简易英语词典app开发 安卓软件开发 Part 6
- open-vot:PyTorch 实现 Siamese-FC
- Docker - 重新启动关闭的容器
- vue 封装公用函数