Bobcares

Copy MongoDB database files – Quick and easy way!

by | Jul 24, 2020

Are you looking for a way to copy MongoDB database files to another server?

MongoDB databases support huge volumes of data and support.

It comes handy in apps that scale up as per usage.

Many times we get requests to copy MongoDB databases as part of our Server Management Services.

Today, in this write up, we’ll see how our Database Engineers copy MongoDB files to production servers.

 

When do we need to copy MongoDB files?

Let’s first see the typical scenarios in which we need to copy the MongoDB database.

MongoDB databases are popular among developers that create scalable apps. These developers build them on a test server. Later after testing, they copy them to the live server.

Recently, one of our customers came with the following request.

I would like you to install MongoDB on my AWS EC2 production server and copy the databases.

Please adjust the mongo configuration so that the mongo database is on this EBS inside /dev/sdb.

 

How we copy MongoDB database files

The copying of the database involves multiple steps. It needs creating a backup, copying it to the destination server, and restoring it.

We’ll now look at how our Support Engineers copied the MongoDB database to the customer’s new server.

 

1. Stop MongoDB on the source server

It’s always a good idea to shut down any connections to mongod service before starting database backup. This avoids any data loss.

Therefore, as the first step, we stop the MongoDB on the server. For this we use the command:

service mongod stop

 

2. Create a MongoDB database backup

Now it’s the time to create a database backup. Here, we use the mongodump command.

The format is

mongodump --host <source host:port> --ssl --username <username> --password <password> --authenticationDatabase admin --db <sourceDbName>

For instance, to take the dump of the database with name exampledb, the command will be

mongodump -h myservername:27017 --ssl -u user1 -p 123123 --authenticationDatabase admin -d exampledb

 

3. Copy MongoDB database files to the destination server

Further, we copy the files to the destination server. We can make use of the scp or rsync to copy them.

The customer had both production and staging servers as AWS instances. So we used scp to transfer the files.

To make scp work, we had to adjust the security group settings from the AWS console. In normal servers, this requires firewall changes so that the connection between the servers work.

 

4. Restore MongoDB database

Once the backup file is on the destination server, it’s time to restore the MongoDB database. For this, we use the mongorestore command.

The syntax will be

mongorestore --host <target host:port> --ssl --username <username> --password <password> --authenticationDatabase admin --db <targetDbName> --collection <collection-name> <dump folder/file>

To restore the exampledb database, we used

mongorestore --host=mynewserver --port=27017 --username=user --authenticationDatabase=admin --db exampledb /opt/backup/mongodump-exampledb

That completed the restore without any errors.

copy_mongodb_database_files

 

5. Access to users on the new server

Finally, in certain cases, we may have to give access to users on the new servers.

The customer wanted to adjust permissions on Mongo to allow connection from his host IP address.

MongoDB uses port number 27017 for all connections by default. So we opened up that port for the specific IP. We did this from the network settings of the AWS console. We opened up inbound and outbound traffic on port 27017 for the IP “17x.yy.zz.22”. Here, we used the custom TCP as the protocol.

 

[Need help to copy MongoDB database files to a new server? We are available 24×7 to help you.]

 

Conclusion

To sum up, mongodump and mongorestore provide a quick way to copy MongoDB database files to another server.

Today, we saw how our Support Engineers copied the MongoDB database for our customers.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

var google_conversion_label = "owonCMyG5nEQ0aD71QM";

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.