How to check if mongo db is running on Mac?
The answers combining ps
and grep
should always get you what you need. However, if you have a standard installation that comes with the mongo shell, an easier to remember method is to start the mongo shell
mongo
The shell will give you status of mongodb.
Quick Solution
Run the following in your Terminal:
ps -ef | grep mongod | grep -v grep | wc -l | tr -d ' '
This will get you the number of MongoDB
processes running, thus if it is other than 0
, then you have MongoDB
running on your system.
Step-by-Step
The
ps -ef | grep mongod
part return all the running processes, that have any relation to the supplied string, i.e.mongod
, e.g. have the string in the executable path, have the string in the username, etc.When you run the previous command, the
grep mongod
also becomes a process containing the stringmongod
in theCOMMAND
column ofps
output, so it will also appear in the output. For that reason you need to eliminate it by pipinggrep -v grep
, which filters all the lines from the input that contain the stringgrep
.So now you have all possible lines that contain string
mongod
and are not the instances ofgrep
. What to do? Count them, and do that withwc -l
.wc -l
output contains additional formatting, i.e. spaces, so just for the sake of the beauty, runtr -d ' '
to remove the redundant spaces.
As a result you will get a single number, representing the number of processes you grep
'ed for.