Sandeep Singh
Sandeep Singh

Reputation: 7990

How to restore the dump into your running mongodb

I want to load data/restore dump data in mongoDB using mongorestore. I am trying to command

mongorestore dump

but it giving me error

Sat Sep 21 16:12:33.403 JavaScript execution failed: SyntaxError: Unexpected identifier

How can we restore or put data into mongoDB?? Please give me the steps.

Upvotes: 87

Views: 304230

Answers (14)

manoj tiwari
manoj tiwari

Reputation: 89

For mongoDB database restore use this command here

mongorestore --db databasename --drop <dump/file/path>

Upvotes: 4

Soham Krishna Paul
Soham Krishna Paul

Reputation: 1243

Dump DB by mongodump

mongodump --host <database-host> -d <database-name> --port <database-port> --out directory

Restore DB by mongorestore

With Index Restore

mongorestore --host <database-host> -d <database-name> --port <database-port> foldername

Without Index Restore

mongorestore --noIndexRestore --host <database-host> -d <database-name> --port <database-port> foldername

Import Single Collection from CSV [1st row will be used as Col/Key Name]

mongoimport --db <database-name> --port <database-port> --collection <collection-name> --type csv --headerline --file /path/to/myfile.csv

Import Single Collection from JSON

mongoimport --db <database-name> --port <database-port> --collection <collection-name> --file input.json

Upvotes: 59

Hari Lakkakula
Hari Lakkakula

Reputation: 307

Process of Backup MongoDb Collections.

  1. Find the MongoDb folder in ProgramFiles or ProgramFiles32.
  2. Navigate to bin Folder.Find the path like this.C:\Program Files\MongoDB\Server\4.2\bin
  3. Make you have to Install Mongo Dump Tools. enter image description here
  4. If you are not find any such tools , kindly go through this link and install it. MongDb Database Tools
  5. inside bin Folder open CMD or navigate to MongdDb Server Bin folder.
  6. Run this Command mongodump --db yourdatabasename. after running this command Dump creation process will start and it will create and one Dump folder in side bin.

Restore Process

  1. open the CMD prompt in Mongdb Server bin Folder.

  2. after that Run this Command **mongorestore --db mydababse --verbose

  3. D:\MongoDbBackup\mydababse\Dec28-21**(this this path where I have store my backup collection).

  4. some time mongDb Restore program required folder permission to restore.

Upvotes: 0

martinho
martinho

Reputation: 3379

To restore a single database:

  1. Backup the testdb database

    $ mongodump --db testdb
    
  2. Restore the testdb database to a new database called testdb2

    $ mongorestore --db testdb2 dump/testdb
    

To restore all databases:

  1. Backup all databases

    $ mongodump
    
  2. Restore all databases

    $ mongorestore dump
    

Upvotes: 31

codeaprendiz
codeaprendiz

Reputation: 3195

If you are okay to drop the existing collections then then following command works fine for me.

  • Okay to drop the existing collections
$ uri_complete="your_complete_uri"
$ restoreFileName="your_restore_filename"
$ mongorestore --uri=$uri_complete -v --gzip --archive=$restoreFileName --drop
  • Not okay to drop existing collections
$ uri_complete="your_complete_uri"
$ restoreFileName="your_restore_filename"
$ mongorestore --uri=$uri_complete -v --gzip --archive=$restoreFileName

If your database is running on localhost on default port without authentication then the following will work.

$ mongorestore -v --gzip --archive=restorefile.gzip --drop

More details - mongorestore

Upvotes: 2

Mr. Programmer
Mr. Programmer

Reputation: 3093

mongodump: To dump all the records:

mongodump --db databasename

To limit the amount of data included in the database dump, you can specify --db and --collection as options to mongodump. For example:

mongodump --collection myCollection --db test

This operation creates a dump of the collection named myCollection from the database 'test' in a dump/ subdirectory of the current working directory. NOTE: mongodump overwrites output files if they exist in the backup data folder.


mongorestore: To restore all data to the original database:

1) mongorestore --verbose \path\dump

or restore to a new database:

2) mongorestore --db databasename --verbose \path\dump\<dumpfolder>

Note: Both requires mongod instances.

Upvotes: 120

Yi Xiang Chong
Yi Xiang Chong

Reputation: 764

You can also restore your downloaded Atlas Backup .wt WiredTiger files (which unzips or untar as a restore folder) to your local MongoDB.

First, make a backup of your /data/db path. Call it /data_20200407/db. Second, copy paste all the .wt files from your Atlas Backup restore folder into your local /data/db path. Restart your Ubuntu or MongoDB server. Start your Mongo shell and you should have those restored files there.

Upvotes: 1

aman raj
aman raj

Reputation: 193

Follow this path.

C:\Program Files\MongoDB\Server\4.2\bin

Run the cmd in bin folder and paste the below command

mongorestore --db <name-your-database-want-to-restore-as> <path-of-dumped-database>

For Example:

mongorestore --db testDb D:\Documents\Dump\myDb

Upvotes: 9

maneesh kumar
maneesh kumar

Reputation: 1

For mongoDB database restore use this command here . First go to your mongodb database location such as For Example : cd Downloads/blank_db/v34000 After that Enter mongorestore -d v34000 ./

Upvotes: -1

Vinit Devani
Vinit Devani

Reputation: 54

mongodump --host test.mongodb.net --port 27017 --db --username --password --authenticationDatabase admin --ssl --out

mongorestore --db --verbose

Upvotes: 0

I have been through a lot of trouble so I came up with my own solution, I created this script, just set the path inside script and db name and run it, it will do the trick

#!/bin/bash

FILES= #absolute or relative path to dump directory
DB=`db` #db name
for file in $FILES
do

    name=$(basename $file)
    collection="${name%.*}"
    echo `mongoimport --db "$DB" --file "$name" --collection "$collection"`

done

Upvotes: 0

Tjs
Tjs

Reputation: 867

You can take a dump to your local machine using this command:

mongodump -h <host>:<port> -u <username> -p <password> -d ubertower-new -o /path/to/destination/directory

You can restore from the local machine to your Mongo DB using this command

mongorestore -h <host>:<port> -u <username> -p <password> -d <DBNAME> /path/to/destination/directory/<DBNAME>

Upvotes: 5

SamanthPadala
SamanthPadala

Reputation: 41

  1. Start mongod
  2. Navigate to folder where you have extracted "enron.zip" in OS shell(cmd in case of windows)
  3. Then type ">mongorestore -d your_db_name dump/enron"

Upvotes: 4

Nazneen
Nazneen

Reputation: 266

The directory should be named 'dump' and this directory should have a directory which contains the .bson and .json files. This directory should be named as your db name.

eg: if your db name is institution then the second directory name should be institution.

After this step, go the directory enclosing the dump folder in the terminal, and run the command

mongorestore --drop.

Do see to it that mongo is up and running.

This should work fine.

Upvotes: 14

Related Questions