Install and run MongoDB with Homebrew
- The first step is updating Homebrew. Open the Terminal application and type: brew update
- After updating Homebrew: brew install mongodb
- After downloading Mongo, create the db directory. This is where the Mongo data files will be stored: mkdir-p /data/db
- Make sure that the /data/db directory has the right permissions by running: sudo chown -R `id -un` /data/db
Creating the Replica Set
- In different terminals, we can start three nodes for the Replica by running:
mongod --port 27017 --dbpath /data/db/rs0-0 --replSet rs0 --bind_ip localhost
mongod --port 27018 --dbpath /data/db/rs0-1 --replSet rs0 --bind_ip localhost
mongod --port 27019 --dbpath /data/db/rs0-2 --replSet rs0 --bind_ip localhost
2. For the next step, we need to open a mongo shell that connects to the primary node by using the mongo command and run:
rs.initiate(
{
_id: "rs0",
members: [
{ _id: 0, host : "127.0.0.1:27017" },
{ _id: 1, host : "127.0.0.1:27018" },
{ _id: 2, host : "127.0.0.1:27019" }
]
}
)
Troubleshooting
Sometimes, one of the common MongoDB ports might be already in use. In order to find the process that is running on a specific ports, we can run:
lsof -n -i :<port-number> | grep LISTEN
This will provide us the process id, which we can kill later by running:
kill -9 <process-id>