【问题标题】:Is there a Terminal command that I can use to shut down a mongod process in OS X?是否有可用于关闭 OS X 中的 mongod 进程的终端命令?
【发布时间】:2015-04-04 06:04:32
【问题描述】:

mongod --shutdown 在 OS X 上不可用。唯一的好方法似乎是使用mongo 接口。我可以使用命令行使用--fork 标志关闭在后台启动的mongod 进程吗?有什么方法可以将killps 一起使用?

我正在尝试使用 npm posttest 脚​​本(只是在我的单元测试之后运行的命令)关闭 MongoDB。

【问题讨论】:

  • 为什么kill <pid> 不起作用?
  • 我并不是一个命令行高手。我怎样才能找到pidps 似乎没有列出所有进程。我试过ps -x | grep mongod 并找不到任何东西。
  • 我不确定在 Mac 上,但在 linux 上,您可以使用 ps,它提供了活动进程及其 pid 的列表。或者您可以在命令行中启动进程并使用echo $! 请求最新启动的进程ID。
  • 或者尝试:mongo admin --eval "db.shutdownServer()".
  • 我喜欢这个解决方案。您应该将其发布为答案,以便我接受。

标签: macos mongodb shell command-line


【解决方案1】:

在启动后使用ps | grep mongodecho $!找出pid(变量$!保存上次启动进程的pid)并使用kill pid

或者,只需使用mongo admin --eval "db.shutdownServer()",它会引发错误但似乎仍然可以工作。您始终可以将不需要的输出通过管道传输到 /dev/null

【讨论】:

  • 另外,使用 pgrep mongod 只返回进程 ID,我觉得这很有帮助。
猜你喜欢
  • 2013-03-10
  • 1970-01-01
  • 2010-10-27
  • 1970-01-01
  • 2010-12-05
  • 1970-01-01
  • 2017-05-25
  • 2015-02-05
  • 2023-03-27
相关资源
最近更新 更多