meteor: how can I backup my mongo database

Solution 1:

First you need to spin up meteor.

Then if you run

meteor mongo

you will get an output something like this:

MongoDB shell version: 2.2.1

connecting to: 127.0.0.1:3001/meteor

Meteor db host is at 127.0.0.1 with a port of 3001. Exit the mongo shell and use mongodump from your terminal.

mongodump -h 127.0.0.1 --port 3001 -d meteor

Dumps will be located under the dumps folder in the folder you executed the above command.

You can import your db back to meteor with

mongorestore -h 127.0.0.1 --port 3001 -d meteor dump/meteor

Solution 2:

If you need to backup a meteor application DB deployed to meteor.com follow these steps:

  1. Be sure you are log in into your meteor dev account and generate a temporary connection link: $ cd yourapp $ meteor login $ meteor mongo yourapp.meteor.com --url

You'll get something like:

mongodb://client-ID:[email protected]:27017/yourapp_meteor_com

This link expires in 1 minute, so hurry up! :)

  1. Create a backup using mongodump command (http://docs.mongodb.org/manual/tutorial/backup-with-mongodump/#backup-from-non-local):

    $ mongodump -h production-db-b1.meteor.io --port 27017 --username client-ID --password password-3be8-f6c5-50a9-password -d yourapp_meteor_com

This backup the entire remote database into a default dump/ folder. Voila!

  1. If ever you need to import the db into local meteor mongo DB, start a mongo shell: $ meteor mongo MongoDB shell version: 2.4.9 connecting to: 127.0.0.1:3001/meteor

and in another terminal use mongorestore command

$ mongorestore --port 3001