【问题标题】:how to start mongodb daemon in python如何在python中启动mongodb守护进程
【发布时间】:2013-03-12 17:34:33
【问题描述】:

如何在 python 中启动 mongodb 守护进程?我有以下脚本

    import subprocess

    subprocess.Popen(['C:\\mongodb\\bin\\mongod', '----dbpath C:\\dropbox\\projects\\mongodb']) 

我得到这个错误:

错误命令行:未知选项 --dbpath C:\dropbox\projects\mongodb

mongo 数据库已经创建在 C:\dropbox\projects\mongodb\

我可以将 mongo 数据库移动到 c:\ 并且不指定“--dbpath”,它工作正常。我还可以使用指定的“--dbpath”从 windows shell 运行 mongod,它运行良好。

由于某种原因,当我尝试从 python 运行它时,它不喜欢传递给它的“--dbpath”参数。

有什么想法吗?

【问题讨论】:

    标签: python mongodb subprocess


    【解决方案1】:

    拆分'--dbpath C:\\dropbox\\projects\\mongodb',应该是'--dbpath', 'C:\\dropbox\\projects\\mongodb'。有两个独立的命令行参数,不是一个,它们是通过mongodb args 解析代码进行逻辑分组的。它应该是--dbpath,而不是----dbpath,至少在Linux上是这样。

    UPD:您的原始代码执行mongod,如下所示:

    C:\\mongodb\\bin\\mongod "----dbpath C:\\dropbox\\projects\\mongodb"
    

    【讨论】:

    • 完美!非常感谢!我知道它必须很简单。我只是没有看到它应该是独立的参数。
    • 很高兴为您提供帮助。如果有用,请随时接受我的回答(有关其工作原理的信息,请参阅 meta.stackexchange.com/questions/23138/…)。 :-D
    猜你喜欢
    • 2016-01-14
    • 1970-01-01
    • 2012-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-25
    • 2012-01-24
    • 2017-10-25
    相关资源
    最近更新 更多