2013-03-12 19 views
3

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

import subprocess 

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

,我得到这个错误:

错误的命令行:未知的选项--dbpath C:\保管箱\项目\ MongoDB的

蒙戈数据库已经创建于C:\ dropbox \ projects \ mongodb \

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

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

有什么想法?

回答

3

拆分'--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" 
+0

完美!谢谢一堆!我知道这一定很简单。我只是没有看到它应该是独立的参数。 – 2013-03-12 17:53:12

+0

很高兴帮助。如果它有用,请随时接受我的回答(有关如何工作的信息,请参阅http://meta.stackexchange.com/questions/23138/how-to-accept-the-answer-on-stack-overflow)。 :-D – Ellioh 2013-03-12 19:38:44