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.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF