【发布时间】:2012-09-26 12:03:31
【问题描述】:
我正在尝试运行一个启动 MongoDB 的 shell 脚本 - 但我正在尝试在 MAMP PRO 的 start.sh 脚本中运行它,这样我就不需要通过终端窗口继续启动 MongoDB。
这不起作用,只是想知道这是否可能,或者这是一个已实施的安全功能?
脚本(startMongo.sh)是:
#! /bin/bash
mongod --dbpath /data/db/ --auth
...我将它添加到 start.sh 脚本中,如下所示:
# /bin/sh
/Applications/MAMP/bin/startMysql.sh
/Applications/MAMP/bin/startApache.sh
/Applications/MAMP/bin/startMongo.sh
【问题讨论】:
-
快速的 Google 搜索表明 MAMP 没有理由阻止 MongoDB 启动。 MongoDB 只是一个守护程序也不会阻止你触发它的启动,事实上它通常应该带有一个预制的脚本。你能告诉我们你放入 start.sh 的代码吗?
-
非常感谢,抱歉应该已经添加了 - 现在应该可以看到了!
-
嗯,我立即看到了两件事:您在 auth 中启动它,但没有提供密钥文件或凭据。根据我在其他 UNIX/Linux 操作系统上的经验,
data/db/prolly 与任何东西都不匹配,您的意思是:/data/db/。虽然 MAMP 可能会有所不同。 -
我目前正在运行没有分片集群和副本集的 MongoDB,因此仅使用 --auth 标志就可以正常运行。如果我通过命令终端运行它,数据库的路径可以正常工作。也许我需要设置 MongoDB 以通过 SSH 运行?
-
你是对的,尽管我需要在 db 路径的开头使用斜杠!
标签: mongodb mamp mongodb-php