0% found this document useful (0 votes)
26 views

Mongo DB Replication

Replication synchronizes data across multiple database servers for redundancy and high availability. A replica set achieves replication in MongoDB using a primary node and secondary nodes that replicate data from the primary. The document describes how to set up a replica set in MongoDB and add members to the set.

Uploaded by

Ashok Avulamanda
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views

Mongo DB Replication

Replication synchronizes data across multiple database servers for redundancy and high availability. A replica set achieves replication in MongoDB using a primary node and secondary nodes that replicate data from the primary. The document describes how to set up a replica set in MongoDB and add members to the set.

Uploaded by

Ashok Avulamanda
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

Replication is the process of synchronizing data across multiple servers.

Replication provides redundancy


and increases data availability with multiple copies of data on different database servers. Replication
protects a database from the loss of a single server. Replication also allows you to recover from
hardware failure and service interruptions. With additional copies of the data, you can dedicate one to
disaster recovery, reporting, or backup.

Why Replication?

 To keep your data safe

 High (24*7) availability of data

 Disaster recovery

 No downtime for maintenance (like backups, index rebuilds, compaction)

 Read scaling (extra copies to read from)

 Replica set is transparent to the application

How Replication Works in MongoDB

MongoDB achieves replication by the use of replica set. A replica set is a group of mongod instances that
host the same data set. In a replica, one node is primary node that receives all write operations. All
other instances, such as secondaries, apply operations from the primary so that they have the same data
set. Replica set can have only one primary node.

 Replica set is a group of two or more nodes (generally minimum 3 nodes are required).

 In a replica set, one node is primary node and remaining nodes are secondary.

 All data replicates from primary to secondary node.

 At the time of automatic failover or maintenance, election establishes for primary and a new
primary node is elected.

 After the recovery of failed node, it again join the replica set and works as a secondary node.

A typical diagram of MongoDB replication is shown in which client application always interact with the
primary node and the primary node then replicates the data to the secondary nodes.
Replica Set Features

 A cluster of N nodes

 Any one node can be primary

 All write operations go to primary

 Automatic failover

 Automatic recovery

 Consensus election of primary

Set Up a Replica Set

In this tutorial, we will convert standalone MongoDB instance to a replica set. To convert to replica set,
following are the steps −

 Shutdown already running MongoDB server.

 Start the MongoDB server by specifying -- replSet option. Following is the basic syntax of --
replSet −
mongod --port "PORT" --dbpath "YOUR_DB_DATA_PATH" --replSet "REPLICA_SET_INSTANCE_NAME"

Example

mongod --port 27017 --dbpath "D:\set up\mongodb\data" --replSet rs0

 It will start a mongod instance with the name rs0, on port 27017.

 Now start the command prompt and connect to this mongod instance.

 In Mongo client, issue the command rs.initiate() to initiate a new replica set.

 To check the replica set configuration, issue the command rs.conf(). To check the status of
replica set issue the command rs.status().

Add Members to Replica Set

To add members to replica set, start mongod instances on multiple machines. Now start a mongo client
and issue a command rs.add().

Syntax

The basic syntax of rs.add() command is as follows −

>rs.add(HOST_NAME:PORT)

Example

Suppose your mongod instance name is mongod1.net and it is running on port 27017. To add this
instance to replica set, issue the command rs.add() in Mongo client.

>rs.add("mongod1.net:27017")

>

You can add mongod instance to replica set only when you are connected to primary node. To check
whether you are connected to primary or not, issue the command db.isMaster() in mongo client.

You might also like