2012-10-05 53 views

回答

16

我在Ubuntu上安装了2.0.7版本,默认为/var/lib/mongodb/,这也是放入我的/etc/mongodb.conf文件中的内容。

+0

为什么这本书'mongodb的:明确guide'说,它默认为'/数据/ DB '?我不知道为什么。 – holys

+0

这可能是分发包是如何构建的一个因素。我使用'apt-get'安装了我的副本。你是如何安装你的副本的?你仍然得到关于dbpath的错误不存在吗? – HeatfanJohn

49

MongoDB的默认DBPATH是/data/db

没有默认的配置文件,所以用起mongod当你要么需要指定此:

mongod --config /etc/mongodb.conf 

..或使用打包安装的MongoDB(如RedhatDebian/Ubuntu),这将在服务定义中包含一个配置文件路径。

注:检查正在运行的mongod的DBPATH和命令行选项,通过mongo外壳连接并运行:

db.serverCmdLineOpts() 

特别是,如果自定义dbpath设置这将是价值:

db.serverCmdLineOpts().parsed.dbpath   // MongoDB 2.4 and older 
db.serverCmdLineOpts().parsed.storage.dbPath // MongoDB 2.6+ 
+0

我使用pacman(用于ArchLinux)安装MongoDB – holys

+3

从mongo shell获取数据库的路径是,从2.6.1开始:db.serverCmdLineOpts()。parsed.storage.dbPath – Marius

+0

@Marius:谢谢指出2.6更改 - 更新! – Stennie

7

我依赖于版本和发行版。

例如默认下载从MongoDB的网站预先2.2用途:/data/db但Ubuntu的安装在以前使用一个点:var/lib/mongodb

我觉得这些人员已标准化,这样2.2+只会使用data/db无论是来自直接下载的站点或从回购。

+1

在发行版的差是基于所述包装和服务定义。在没有任何参数的情况下启动'mongod',你会得到'/ data/db'的默认dbpath(唯一的硬编码默认值)。 – Stennie

+2

我使用的Debain和默认去无功/ lib中/的MongoDB以及 – Vass

9

对于Windows机器通过指定DBPATH启动mongod过程:

mongod --dbpath \mongodb\data 

参考:Manage mongod Processes

+0

这个答案也适用于Linux的 –