如何使用终端命令检查 mongodb 服务是否正在运行?

如何使用终端命令检查 mongodb 服务是否正在运行?

我正在使用 mongodb 数据库将我的应用程序数据保存到集合中,但由于某些原因,mongodb 连接中断,并且出现很多问题,我想通过终端命令检查 mongodb 连接。我搜索了一下,找到了三个将要使用的命令,但我很困惑在 golang 代码中我必须使用哪个命令。

命令 1.pgrep mongod此命令将返回 PID(进程 ID)。

命令 2.ps -ef | grep mongod 此命令将返回mongodb 15678 1 1 13:58 ? 00:00:01 /usr/bin/mongod --config /etc/mongod.conf

命令 3.ps -ef | grep mongod | grep -v grep | wc -l | tr -d ' '我从 stackoverflow 接受的答案中找到了这个命令,它可能会返回 0、1。如果除了 0 之外还有其他值,那么您的 mongodb 正在运行,正如答案所说,您可以看到问题的链接

关联:-https://stackoverflow.com/questions/31561098/how-to-check-if-mongo-db-is-running-on-mac

命令 4.service --status-all | grep mongod将显示带有类似 的签名的 mongod 服务[ + ], or [ - ]。在文档中,他们说如果服务[ + ]正在运行并且[ - ]服务已停止。但在我的本地主机上,mongod 正在运行,[ - ] mongod当我执行此命令时它会显示出来。为什么?

关联:-https://www.rosehosting.com/blog/how-to-list-all-services-in-linux/

请告诉我必须使用哪个命令来检查 mongodb 是否正在运行,我必须在我的 golang 代码中使用该命令。

答案1

你可以这样做

if pgrep -x mongodd
 then echo "ok"
 else echo "not ok"
fi

相关内容