【问题标题】:MongoDB secondary initial sync issueMongoDB 辅助初始同步问题
【发布时间】:2015-09-23 19:54:55
【问题描述】:

我有一个主 mongo 服务器和一个辅助 mongo 服务器。但是由于它们的磁盘空间即将被填满,并且它们无法增加这些服务器上的磁盘大小。 数据库大小为 1.2 TB

我有另一台服务器,它有足够的空间。但是当我尝试在这台服务器上启动初始同步时,它会在大约 750 GB 后进入 RECOVERY 状态。可能是因为它跨越了oplog。

我什至没有足够的空间来增加oplog。

请建议我如何添加另一台服务器作为辅助服务器?

【问题讨论】:

    标签: mongodb


    【解决方案1】:

    当数据量很大时,不要使用初始同步方法。

    请遵循以下程序:

    1. 将新节点添加到replica group
    2. 一旦新节点加入副本并在新节点进入STARTUP2 阶段时立即停止MongoDB serviceMongod 进程。
    3. 从当前复制中停止另一个辅助节点
    4. 将数据文件从现有辅助节点复制到新节点
    5. 启动现有的辅助服务器
    6. 验证现有的二级作为二级运行
    7. 验证通过后,在新节点上启动MongoDB服务,进入SECONDARY阶段后进入RECOVERY

    这是添加新节点的计划(通过快照)。

    注意:如果您的环境有 3 个节点副本,则不需要 downTime,否则我们需要 downTime

    【讨论】:

      【解决方案2】:

      问题已通过在 netcat 上传输 tar 得到解决。使用这种机制,我能够在很短的时间内传输大量数据。更多详情请阅读http://toast.djw.org.uk/tarpipe.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-04-19
        • 1970-01-01
        • 1970-01-01
        • 2019-05-06
        • 1970-01-01
        • 1970-01-01
        • 2011-10-18
        • 2017-07-23
        相关资源
        最近更新 更多