MongoDB 服务启动时指定dbpath

Update:2013-7-12

mongodb-win32-x86_64-2.4.5 已经修正了这个错误,不需要在命令行最后再添加一个反斜杠了。

=======================================================

版本:mongodb-win32-x86_64-2.2.1 

今天在Win7下安装MongoDB的时候,发现把它作为一个服务安装时怎么也启动不起来,后来拜了Google才知道原来需要在根目录下新建一个x:\data\db\文件夹才行。

但是我不想把数据文件放到这里,有没有办法在安装服务的时候指定dbpath呢?

刚开始的时候觉得,这还不简单,使用--dbpath参数不就得了,使用如下命令安装:

mongod --config c:\mongodb\mongod.cfg --dbpath c:\mongodb\data\db\ --install

结果服务无法启动,查看log文件,原来--dbpath参数会将之后所有的字符都当作路径,所以服务启动的时候认为没有一个路径叫做"c:\mongodb\data\db\ --service",启动失败。

第一次尝试失败,那我们把参数换个位置,使用如下命令安装:

mongod --install --config c:\mongodb\mongod.cfg --dbpath c:\mongodb\data\db\

OMG,还是无法启动,查看log文件,错误提示是“ERROR: dbpath (c:\mongodb\data\db" ) does not exist. ”,注意,db之后的反斜杠消失了,查看服务里面的可执行文件路径,确实是有这个反斜杠的,难道这个反斜杠被当作了转义符,执行的时候丢掉了?

继续再试,使用如下命令安装:

mongod --install --config c:\mongodb\mongod.cfg --dbpath c:\mongodb\data\db\\

既然一个反斜杠不行,那我写两个上去。

最终,启动成功。

现在MongoDB服务的数据路径可以随意指定到你想要的位置了。

原文地址:https://www.cnblogs.com/mobydick/p/2755509.html