完全重新安装mongo之后,它仍然记得之前的副本集配置;它存放在哪里?
我使用我们项目的用户帐户在Linux服务器上安装了mongo到该用户拥有的目录中。我设置了复制,并使其正常工作。然后,为了测试一些更精细的安装点,我删除了整个mongo目录并重新安装。进入mongo,我发现复制已经像以前一样设置了;所以似乎mongo正在某处存储信息。
我检查了几个可能一直持有副本集配置的区域:
systemLog.path
),另一条用于存储(storage.dbPath
),两者都指向mongo目录,该目录已被删除。有谁知道mongo在哪里存储这个配置信息?
答案 0 :(得分:4)
复制数据存储在每个节点的local database中(从MongoDB 3.2.9开始)。此数据库包含有关副本集的信息,还包含oplog(<!-- app/views/images/_modal.html.erb -->
<div class="modal fade">
...
<%= image_tag(image.url, class: "img-responsive") %>
...
</div>
集合)。副本集信息存储在此oplog.rs
数据库的system.replset
集合中。
此数据库(以及其他数据库)的物理文件存储在dbPath directory中,可以使用以下命令进行配置:
local
--dbpath
参数
mongod
设置
默认storage.dbPath
值为dbpath
如果清空/data/db
目录,则不会保留副本集设置。如果您发现保留了复制设置,则dbpath
设置可能不正确。