mongodb将数据保存在两个地方

时间:2015-06-12 03:16:08

标签: linux mongodb ubuntu server

我的远程服务器是ubuntu 14.04,我在那里安装了mongodb。但是,当我尝试使用DataBase恢复mongorestore时,我注意到以下两个位置的磁盘空间显着减少。

/var/lib/mongodb

/data/db

有谁知道为什么会这样?

2 个答案:

答案 0 :(得分:3)

看来你已经在Ubuntu的APT上安装了mongo。

如果您只是在具有nohup的终端中启动mongod服务器,或者只是让它在不同的终端中运行,它会将默认数据库路径视为/data/db/,默认日志记录目录为{{ 1}}。

您可能已使用

之类的命令启动/var/log/mongo
mongod

采用默认数据和日志记录目录。

./bin/mongod 根据mongorestore服务器的配置工作。这就是您在运行mongod后看到这些目录的空间消耗激增的原因。

启动mongorestore服务器的正确方法是使用以下命令

mongod

如果您不想作为服​​务启动/停止,您还可以指示sudo service mongod start 使用以下命令正确使用conf文件

mongod

您的./bin/mongod --config /etc/mongod.conf 配置文件位于mongod。请相应更改/etc/mongod.confdbpath

答案 1 :(得分:1)

首先,我可以将问题推断为两部分:

  1. 为什么文件系统大小在mongorestore
  2. 之后会减少
  3. 为什么mongodb会将数据存储在两个位置?
  4. 回答第一个问题:

    Mongorestore只收集数据,但文件系统大小可能与实际数据大小不同。 Mogodb以这种方式设计,它将分配比DB中的实际数据大小更多的空间。有关mongodb网站的详细说明,请参阅this link

    中的此部分
      

    为什么我的数据目录中的文件大于我的数据   数据库吗

         

    数据目录中的数据文件,即/ data / db目录   在默认配置中,可能大于插入的数据集   进入数据库。考虑以下可能的原因:

    第二个问题:

    请参阅bsd回复,似乎是一种可能的情况。