Over a million developers have joined DZone.

Importing and Exporting MongoDB Databases

DZone's Guide to

Importing and Exporting MongoDB Databases

· Web Dev Zone ·
Free Resource

Read this guide to learn everything you need to know about RPA, and how it can help you manage and automate your processes.

I'm enjoying working with MongoDB but as with any new technology, it can take a little while to find your way around all the tools related to that stack. In particular, I found myself wondering how do I mysqldump for mongodb?

It should have come as no surprise that the command I wanted was called mongodump, really! There are lots of ways of importing/exporting mongodb databases, and there is some excellent documentation on the mongodb.org site about the various tools.

I moved one database from one server to another, and it was pretty straightforward so I thought I'd write down the commands that I used so I can refer to them later (I did this yesterday and already I've had to look at my bash history to remember how to do it!).

Exporting from MongoDB

To export the database, simply tell mongodump which database (or collection) you want to export, and where to export it to. Mine was the pets database, so my command looks like this:

mongodump -d pets -o petsbackup

This dumps the pets database into the petsbackup directory. Take a look at what we have in that directory now:

├── animals.bson
└── system.indexes.bson

0 directories, 2 files

The only collection in my pets database is the animals collection, however you'll see a .bson file for each collection in your database, plus the system indexes collection. It is up to you whether you want to take individual collections, or a whole database, but bear in mind that your choice will dictate whether you get information about indexes etc when you import the data elsewhere.

Importing to MongoDB

To import, simply use the mongorestore command, which accepts either a single .bson file representing a collection, or a directory containing multiple files. Here's my example:

mongorestore -d pets /path/to/pets

You can specify any database name and path to files you like, so for taking backups or restoring additional copies of a database, this can be really handy. The mongo commands are well-documented and I found them easy to work with - hopefully this helps you work with them too!


From http://www.lornajane.net/posts/2011/importing-and-exporting-mongodb-databases

Get the senior executive’s handbook of important trends, tips, and strategies to compete and win in the digital economy.


Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}