Mongodb实现定时备份与恢复的方法教程
发布时间 - 2026-01-11 02:04:18 点击率:次本文主要介绍了关于Mongodb实现定时备份与恢复的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍:

MongoDB 数据备份
在 MongoDB 中我们使用 mongodump 命令来备份 MongoDB 数据
语法如下:
> mongodump -h dbhost -d dbname -o dbdirectory -u user -p password
- -h MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
- -d 需要备份的数据库实例,例如:test
- -o 备份的数据存放位置,例如:c:datadump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。
- -u -p 如果有设置用户和密码,需要设置对应的用户名和密码,否则没有权限
MongoDB 数据恢复
mongodb 使用 mongorestore 命令来恢复备份的数据
>mongorestore -h <hostname><:port> -d dbname <path>
1、--host <:port>, -h <:port>:MongoDB所在服务器地址,默认为: localhost:27017
2、--db , -d :需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2
3、--drop:恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,慎用哦!
4、<path>:
最后的一个参数,设置备份数据所在位置,例如:c:datadumptest。
你不能同时指定 <path> 和 --dir 选项,--dir也可以设置备份目录。
5、--dir:指定备份的目录
你不能同时指定 <path> 和 --dir 选项。
定时备份 mongodb
环境
操作系统: Centos 7
一、 备份 shell 脚本 (/home/crontab/mongobk.sh)
#!/bin/sh # dump 命令执行路径,根据mongodb安装路径而定 DUMP=/usr/bin/mongodump # 临时备份路径 OUT_DIR=/home/backup/mongod_bak/mongod_bak_now # 压缩后的备份存放路径 TAR_DIR=/home/backup/mongod_bak/mongod_bak_list # 当前系统时间 DATE=`date +%Y-%m-%d` # 数据库账号 DB_USER=user # 数据库密码 DB_PASS=password # 代表删除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 -u $DB_USER -p $DB_PASS -d dbname -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 /home/backup/mongodb_bak/mongodb_bak_now mkdir -p /home/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
参考资源
- centos(7.0) 上 crontab 计划任务
- MongoDB的备份(mongodump)与恢复(mongorestore)
- MongoDB 备份(mongodump)与恢复(mongorestore)
- Centos7:利用crontab定时执行任务
- Linux下MongoDB自动备份
- mongodb 中文文档
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。
# mongodb
# 定时备份脚本
# mongodb备份与恢复
# 定时备份
# MongoDB的备份与恢复
# mongoDB4.2.8备份恢复与导出导入(推荐)
# 分布式文档存储数据库之MongoDB备份与恢复的实践详解
# 使用centos系统中的crontab命令对mongodb定时备份恢复
# MongoDB 导出导入备份恢复数据详解及实例
# MongoDB使用自带的命令行工具进行备份和恢复的教程
# Windows或Linux系统中备份和恢复MongoDB数据的教程
# Mongodb数据库的备份与恢复操作实例
# MongoDB整库备份与还原以及单个collection备份、恢复方法
# MongoDB的备份(mongodump)与恢复(mongorestore)
# 自动启动
# 备份文件
# 相关内容
# 可以用
# 设为
# 要把
# 使其
# 分别为
# 这篇文章
# 谢谢大家
# 但它
# 建立一个
# 重启
# 而定
# 每分钟
# 没有权限
# 可执行
# 数据恢复
# 星期天
# 数据备份
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
微信h5制作网站有哪些,免费微信H5页面制作工具?
Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程
如何用VPS主机快速搭建个人网站?
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
如何快速上传建站程序避免常见错误?
Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件
网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?
Laravel如何使用Telescope进行调试?(安装和使用教程)
青岛网站建设如何选择本地服务器?
Swift中switch语句区间和元组模式匹配
高防服务器如何保障网站安全无虞?
简单实现jsp分页
如何快速查询网站的真实建站时间?
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
Python数据仓库与ETL构建实战_Airflow调度流程详解
Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言
如何在阿里云香港服务器快速搭建网站?
EditPlus中的正则表达式 实战(2)
如何用IIS7快速搭建并优化网站站点?
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
深圳网站制作平台,深圳市做网站好的公司有哪些?
Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】
百度输入法ai组件怎么删除 百度输入法ai组件移除工具
Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤
在线教育网站制作平台,山西立德教育官网?
如何在Tomcat中配置并部署网站项目?
php485函数参数是什么意思_php485各参数详细说明【介绍】
Laravel怎么连接多个数据库_Laravel多数据库连接配置
悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音
Laravel安装步骤详细教程_Laravel环境搭建指南
浅谈redis在项目中的应用
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
javascript事件捕获机制【深入分析IE和DOM中的事件模型】
Laravel怎么生成URL_Laravel路由命名与URL生成函数详解
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
Laravel如何实现API速率限制?(Rate Limiting教程)
Laravel如何发送系统通知_Laravel Notifications实现多渠道消息通知
千库网官网入口推荐 千库网设计创意平台入口
Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置
如何快速选择适合个人网站的云服务器配置?
Laravel如何实现密码重置功能_Laravel密码找回与重置流程
如何在橙子建站中快速调整背景颜色?
Laravel distinct去重查询_Laravel Eloquent去重方法
EditPlus中的正则表达式 实战(4)
Python文件异常处理策略_健壮性说明【指导】
如何在七牛云存储上搭建网站并设置自定义域名?
深入理解Android中的xmlns:tools属性
什么是JavaScript解构赋值_解构赋值有哪些实用技巧
大连 网站制作,大连天途有线官网?

