In this article, I’ll look at how you can use a backup to start a secondary instance for MongoDB.
Although the documentation says it is not possible to use a backup to start a secondary, sometimes this is the only possible way to start a new instance. In this article, we will explain how to bypass this limitation and use a backup to start a secondary instance.
The initial sync/rsync or snapshot works fine when the instances are in the same data center, but it can fail or be really slow. Much slower than moving a compressed backup between data centers.
Not every backup can be used as a source for starting a replica set. The backup must have the oplog file. This means the backup must be done in a previously existent replica set using the--oplog flag point in time backup when dumping the collections. The time spent to move and restore the backup file must be less than the oplog window.
Please follow the next steps to create a secondary from a backup:
I hope this tutorial helps in an emergency situation. Please consider using initial sync, disk snapshots and hot backups before using this method.
Feel free to reach out me on twitter @AdamoTonete or @percona.