MongoDB中怎么恢复误删的数据库

介绍

这篇文章将为大家详细讲解有关MongoDB中怎么恢复误删的数据库,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

<强>方法一:通过oplog恢复

如果部署的是MongoDB复制集,这时还有一线希望,可以通过oplog来尽可能的恢复数据,MongoDB复制集的每一条修改操作都会记录一条,oplog,所以当数据库被误删后,可以通过重放现有的oplog来“尽可能的恢复数据”。前不久遇到的一个用户,运气非常好,数据库是最近才创建的,所有的操作都还保留在oplog里,所以用户通过oplog把所有误删的数据都找回了。

通过oplog恢复数据的流程非常简单,只需要把oplog集合通过mongodump导出,然后通过mongorestore的oplogReplay,模式重放一下。

<强>步骤1:强导出oplog集合

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

<强>步骤2:拷贝oplog集合的数据

 mkdir  new_backupdir , cp  backupdir/地方/oplog.rs.bson  new_backupdir/oplog。bson 

<强>步骤3:重放oplog

 mongorestore ——oplogReplay  new_backupdir 

方法二:通过备份集恢复

如果对MongoDB做了全量备份+增量备份,那么可以通过备份集及来恢复数据。备份可以是多种形式,比如:

<李>

通过mongodump等工具,对数据库产生的逻辑备份

<李>

拷贝dbpath目录产生的物理备份

<李>

文件系统,卷管理等产生的快照等

关于MongoDB中怎么恢复误删的数据库就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

MongoDB中怎么恢复误删的数据库