shell脚本 - 检查mongod服务器是否正在运行

She*_*jie 5 shell mongodb

我有一个shell脚本来做一些mongo db动作:

例如 mongo testdb --eval "db.dropDatabase()"

但是,如果mongod服务器没有运行,我得到:

MongoDB shell version: 2.0.4
connecting to: testdb
Tue May 14 04:33:58 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84
Run Code Online (Sandbox Code Playgroud)

有没有办法在mongo我可以检查连接状态?最终我想要这样的东西:

if(mongod is running):
    mongo testdb --eval "db.dropDatabase()"
else:
    echo "pls make sure your mongod is running"
    exit 1
Run Code Online (Sandbox Code Playgroud)

Wir*_*rie 19

你应该能够像这样创建一个bash脚本:

mongo --eval "db.stats()"  # do a simple harmless command of some sort

RESULT=$?   # returns 0 if mongo eval succeeds

if [ $RESULT -ne 0 ]; then
    echo "mongodb not running"
    exit 1
else
    echo "mongodb running!"
fi
Run Code Online (Sandbox Code Playgroud)