Shell script mongodb, shell script to spawn different mongod processes on different ports in a single system and add a replica set of MongoDB. This is very easy to do and write in Linux shell script instead of writing one by on Linux terminal.
Linux shell script to spawn mongod process
To understand this you must know the basic syntax of linux script. Our objective is to write a shell script which do on behalf of yours linux terminal stuff.
#!/bin/bash course="M310" exercise="HW-1.2" workingDir="$HOME/${course}-${exercise}" dbDir="$workingDir/db" logName="mongo.log" ports=(31120 31121 31122) replSetName="TO_BE_SECURED" host=`hostname` initiateStr="rs.initiate({ _id: '$replSetName', members: [ { _id: 1, host: '$host:31120' }, { _id: 2, host: '$host:31121' }, { _id: 3, host: '$host:31122' } ] })" # create working folder mkdir -p "$workingDir/"{r0,r1,r2} # launch mongod's for ((i=0; i < ${#ports[@]}; i++)) do mongod --dbpath "$workingDir/r$i" --logpath "$workingDir/r$i/$logName.log" --port ${ports[$i]} --replSet $replSetName --fork done # wait for all the mongods to exit sleep 3 # initiate the set mongo --port ${ports[0]} --eval "$initiateStr"
Your suggestions are welcome to encourage writing. Happy learning 🙂
Pingback: ramesh