Mongodb数据库误删后的恢复方法(两种)

  • A+
所属分类:MongoDB

办法一:经由过程 oplog 规复

假如部署的是 MongoDB 复制集,这时还有一线愿望,可以经由过程 oplog 来尽可能的规复数据;MongoDB 复制集的每一条改动操作都邑记载一条 oplog,以是当数据库被误删后,可以经由过程重放现有的oplog来「尽可能的规复数据」。前不久遇到的一个用户,命运运限异常好,数据库是比来才创立的,所有的操作都还保存在oplog里,以是用户经由过程oplog把所有误删的数据都找回了。

经由过程 oplog 规复数据的流程异常简单,只必要把oplog聚拢经由过程mongodump导出,然后经由过程mongorestore 的 oplogReplay 模式重放一下。

Step1: 导出 oplog 聚拢

mongodump -d local -c oplog.rs -d -o backupdir

Step2: 拷贝oplog聚拢的数据

Step3: 重放oplog

mongorestore --oplogReplay new_backupdir

办法二:经由过程备份集规复

假如对 MongoDB 做了全量备份 + 增量备份,那么可以经由过程备份集及来规复数据。备份可所以多种情势,好比:

经由过程 mongodump 等对象,对数据库发生的逻辑备份
拷贝 dbpath 目次发生的物理备份
文件体系、卷治理等发生的快照等

从这里实在也可以看出一个问题,便是「部署了多节点的复制集,为什么还必要做数据备份?」;遇到误删数据库这种问题,dropDatabase 敕令也会同步到所有的备节点,导致所有节点的数据都被删除。

总结

以上所述是小编给年夜家先容的Mongodb数据库误删后的规复办法,愿望对年夜家有所赞助,假如年夜家有任何疑问请给我留言,小编会实时回复年夜家的。在此也异常感激年夜家对剧本之家网站的支撑!

您可能感兴致的文章:

Mongodb实现准时备份与规复的办法教程MongoDB使用自带的敕令行对象进行备份和规复的教程Windows或Linux体系中备份和规复MongoDB数据的教程MongoDB单表数据的导出和规复实例讲授MongoDB整库备份与还原以及单个collection备份、规复办法

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: