我已经通过shell脚本在三个节点中配置了mongodb副本集。当我再次运行该脚本时,它应检查是否已配置副本,并且不应再次配置副本。如何通过shell脚本检查相同的内容?
答案 0 :(得分:0)
您可以尝试此命令,然后检查其返回状态:
mongo target_host:port/db_name --eval "db.stats()"
我正在检查本地计算机本身,因此我使用了127.0.0.1。如果未指定数据库,则会话的mongo shell将默认使用 test 数据库。因为我也连接到测试数据库,所以我在下面给出的命令中跳过了那个东西:
mongo 127.0.0.1:27119 --eval "db.stats()" > /dev/null 2>&1
result=$?
if [ $result -eq 0 ]; then
echo "Mongo replica set running!"
else
echo "Mongo replica set not running!"
exit 1
fi