How restore a specific database from backup using mongorestore command

  • I created a backup of all my databases using mongodump command. Now I want to restore a specific database using mongorestore command.

    How is this possible, I use this command: --db option then mongodb doesn't restore a specific database.

  • To restore a single database you need to provide the path to the dump directory as part of the mongorestore command line.

    For example:

    # Backup the training database
    mongodump --db training
    # Restore the training database to a new database called training2
    mongorestore --db training2 dump/training

    The --db option for mongodump specifies the source database to dump.

    The --db option for mongorestore specifies the target database to restore into.

  • Use the following command to restore mongo db:

    mongorestore -d dbname dbpath
  • $ mongorestore --drop -d <database-name> <dir-of-backup-files>
    • --drop Drop is necessary if you are replacing an existing db
    • -d <database-name> The name of the database to create/replace
    • <dir-of-backup-files> For some reason this is necessary even if it's the current directory

    enter image description here


  • Restoring using mongorestore

    After making sure that mongod and mongo are running, go to the dump's parent directory in a new terminal. And use the command mongorestore dump. Where dump is the folder name in which the database dump is present.

    Restoring using mongorestore

  • Maybe slightly unrelated, but based on the answers here i got the following

    Using mongodump and mongorestore archive feature I comprised a oneliner:

    mongodump --host H --port P --username U --password PWD --archive | mongorestore --username U1 --password PWD1 --archive

    The above example will :

    1. Dump data from host H with port P logged in with user U and password PWD
    2. "Stream" that data into your local database with user U1 and password PWD1

License under CC-BY-SA with attribution

Content dated before 6/26/2020 9:53 AM