【发布时间】:2016-09-07 14:31:39
【问题描述】:
完全重装完mongo后,还记得之前的副本集配置;它存储在哪里?
我使用我们项目的用户帐户在 linux 服务器上安装了 mongo,并将其安装到该用户拥有的目录中。我设置了复制并让它正常工作。然后,为了测试一些更好的安装点,我删除了整个 mongo 目录并重新安装。进入mongo,发现replication已经和之前一样设置好了;所以看起来 mongo 将信息存储在某个地方。
我检查了几个可能保存副本集配置的区域:
- 首先,在 mongo 目录中,但已删除。
- 在某些传统的 linux 结构中,可能由 root 拥有,但项目用户没有 root 访问权限,并且由相同运行的 mongo 也不应该。
- 项目用户的主目录。现在这确实有一个包含命令行历史的 .dbshell 文件,但仅此而已。我没有看到任何其他相关的文件。
- 在 mongo 配置中指定的某个位置。但是我这里只提到了两个路径,一个用于系统日志(
systemLog.path),另一个用于存储(storage.dbPath),并且都指向 mongo 目录,该目录已被删除。
有谁知道 mongo 将这些配置信息存储在哪里?
【问题讨论】:
-
Mongo Shell 中的 rs.help() 和 rs.status() 是一个很好的起点。 rs.conf() 显示您当前的复制配置。
-
实际上,rs.status() 是我知道它提供了所有原始信息的方式。不幸的是,它没有提供有关信息存储在机器上哪个物理位置的信息。不过还是谢谢。
标签: mongodb replication mongodb-replica-set