使用--oplog进行热备份的Mongodump



我正在寻找在副本集(非碎片)上进行Mongodb备份的正确方法。

通过阅读Mongodb文档,我了解到即使在副本(从属)服务器上,一个"mongodump--oplog"也应该足够了。

来自mongodb/mongoddump文档:

--oplog使用此选项可确保mongodump创建包含oplog的数据库转储,以创建mongod实例状态的时间点快照。要恢复到特定的时间点备份,请将使用此选项创建的输出与mongorestore--oplogReplay结合使用。

如果没有--oplog,如果在转储操作期间有写操作,转储将不会反映任何时刻。更新过程中对数据库所做的更改可能会影响备份的输出

我仍然很难理解Mongodb如何备份和继续在数据库上写东西,并进行一致的备份,即使使用--oplog也是如此。我应该先锁定我的集合,还是运行"mongodump--oplog"安全?还有什么我应该知道的吗?

谢谢。

以下文档解释了mongodump如何使用–oplog选项创建时间点备份。

http://docs.mongodb.org/manual/tutorial/backup-databases-with-binary-database-dumps/

然而,使用mongodump和mongorestore来备份和恢复MongodDB可能会很慢。如果文件系统快照是一个选项,您可能需要考虑使用快照进行MongoDB备份。以下链接中的信息详细介绍了执行MongoDB热备份的两个快照选项。

http://docs.mongodb.org/manual/tutorial/backup-databases-with-filesystem-snapshots/

您还可以查看MongoDB备份服务

http://www.10gen.com/products/mongodb-backup-service

最新更新