关于mongodb的默认数据库路径?

时间:2012-11-24 05:39:25

标签: mongodb

环境:

  • 3.4.9-gentoo
  • mongodb(OpenRC)0.9.8.4(Gentoo Linux)

如果我使用mongod守护进程启动mongodb,则默认数据库路径为/data/db

但如果我使用/etc/init.d/mongodb脚本启动mongodb,/etc/conf.d/mongdb写默认数据库路径为/var/lib/mongodb

我很困惑为什么db路径不一样?

1 个答案:

答案 0 :(得分:4)

如果在没有配置文件的情况下启动MongoDB,则默认dbpath/data/db

您的初始化脚本(/etc/init.d/mongodb)正在启动mongodb,其中包含--config(又名-f)选项以及要使用的配置文件的路径(/etc/conf.d/mongodb)。< / p>

如果查看/etc/config.mongodb配置文件的内容,您应该会看到dbpath设置,其中/var/lib/mongodb目录路径会覆盖默认路径。在这种情况下,MongoDB安装包的维护者已经确定/var/lib是最合适的数据文件默认目录。通常,这样做是为了与您的发行版中其他包使用的默认位置更加一致; MongoDB数据文件可以存在于文件系统的任何位置。

您还可以使用以下命令检查mongo shell中配置文件覆盖的所有设置:

 getCommandLineOpts()

输出类似于:

{
    "argv" : [
        "mongod",
        "--dbpath",
        "/var/lib/mongodb"
    ],
    "parsed" : {
        "dbpath" : "/var/lib/mongodb"
    },
    "ok" : 1
}