Navigation
This version of the manual is no longer supported.

Restore Sharded Clusters

On this page

Overview

The procedure outlined in this document addresses how to restore an entire sharded cluster. For information on related backup procedures consider the following tutorials which describe backup procedures in greater detail:

The exact procedure used to restore a database depends on the method used to capture the backup. See the Backup Strategies for MongoDB Systems document for an overview of backups with MongoDB, as well as Sharded Cluster Backup Considerations which provides an overview of the high level concepts important for backing up sharded clusters.

Procedure

  1. Stop all mongod and mongos processes.

  2. If shard hostnames have changed, you must manually update the shards collection in the Config Database Contents to use the new hostnames. Do the following:

    1. Start the three config servers by issuing commands similar to the following, using values appropriate to your configuration:

      mongod --configsvr --dbpath /data/configdb --port 27019
      
    2. Restore the Config Database Contents on each config server.

    3. Start one mongos instance.

    4. Update the Config Database Contents collection named shards to reflect the new hostnames.

  3. Restore the following:

    • Data files for each server in each shard. Because replica sets provide each production shard, restore all the members of the replica set or use the other standard approaches for restoring a replica set from backup. See the Restore a Snapshot and Restore a Database with mongorestore sections for details on these procedures.
    • Data files for each config server, if you have not already done so in the previous step.
  4. Restart all the mongos instances.

  5. Restart all the mongod instances.

  6. Connect to a mongos instance from a mongo shell and use the db.printShardingStatus() method to ensure that the cluster is operational, as follows:

    db.printShardingStatus()
    show collections