如何检查 mongo 数据库是否在 Mac 上是 运行?

How to check if mongo db is running on Mac?

几天前我已经在我的 Mac 上安装了 MongoDB,但我不确定我是如何安装的,但现在我该如何检查 MongoDB 是否启动以及 运行 在我的系统中?

快速解决方案

运行 终端中的以下内容:

ps -ef | grep mongod | grep -v grep | wc -l | tr -d ' '

这将为您提供 MongoDB 个进程的数量 运行ning,因此如果它不是 0,那么您有 MongoDB 运行正在您的系统上。

循序渐进

  • ps -ef | grep mongod部分return所有运行ning进程,与提供的字符串有任何关系,即 mongod,例如在可执行路径中包含字符串,在用户名中包含字符串等

  • 当你运行上一个命令时,grep mongod也变成了一个包含COMMAND列中的字符串mongod的进程ps 输出,所以它也会出现在输出中。出于这个原因,您需要通过管道 grep -v grep 来消除它,它会过滤掉输入中包含字符串 grep.

    [ 的所有行=56=]
  • 所以现在所有可能的行都包含字符串 mongod 而不是 grep 的实例。该怎么办?计算它们,然后使用 wc -l.

  • wc -l 输出包含额外的格式,即空格,所以为了美观,运行 tr -d ' ' 删除多余的空格。

因此,您将得到一个数字,代表您 grep 的进程数。

结合 psgrep 的答案总能满足您的需求。但是,如果您有 mongo shell 附带的标准安装,一个更容易记住的方法是启动 mongo shell

mongo

shell 将为您提供 mongodb 的状态。

我前段时间遇到了同样的问题。使用 ps -ef(进程状态命令)将显示 mongod 或 mongodb 守护进程是否为 运行。但如果它不是 运行,它将产生一个 0,因为指示 mondodb 不存在的状态。

但是,如果您想通过 Mac 上的系统搜索来检查安装,比如使用诸如 mongod 或 mongodb 之类的短语,它将显示已安装目录和文件的物理位置从搜索的短语开始。如果你抓住这个目录,你会看到一个 bin 目录,里面有二进制文件。