众所周知,mongodb 的 oplog 是有限的。
如果我只是创建一个新的从站,那么数据库中的所有内容都还没有同步。数据库中的所有内容都比任何 oplog 都大。
那么我该如何解决呢?这是否意味着我们不能创建一个比 oplog 更大的新从站?除了那个oplog,mongodb还有其他同步数据库的机制吗?
如果是真的,那么它是如何完成的?
所以有什么问题?
众所周知,mongodb 的 oplog 是有限的。
如果我只是创建一个新的从站,那么数据库中的所有内容都还没有同步。数据库中的所有内容都比任何 oplog 都大。
那么我该如何解决呢?这是否意味着我们不能创建一个比 oplog 更大的新从站?除了那个oplog,mongodb还有其他同步数据库的机制吗?
如果是真的,那么它是如何完成的?
所以有什么问题?
如果您的数据库大小合理,并且您有快照,则可以复制文件(由启动时的 --dbpath 标志或在配置文件中指定)以允许新的副本集成员更快地上线。但是,仍可能会发生初始同步。
从概念上讲,会发生以下事情
如果同步失败,将发生另一个初始同步(从一开始)。对于非常大的数据集,同步可能需要一些时间。
回复您的问题
这是否意味着我们不能创建一个比 oplog 更大的新从站?
您可以创建和添加比 oplog 更大的新成员
除了那个oplog,mongodb还有其他同步数据库的机制吗? 是的,上面提到的初始同步和文件副本。