replSetSyncFrom

在本页面

Description

在版本 3.2 中更改:具有1 vote的 MongoDB 3.2 副本集成员不能与具有0 votes的成员同步。

admin数据库中运行replSetSyncFrom

replSetSyncFrom命令的格式如下:

db.adminCommand( { replSetSyncFrom: "hostname<:port>" })

replSetSyncFrom命令具有以下字段:

Field Type Description
replSetSyncFrom string 该成员应从其复制的副本集成员的名称和端口号。使用[hostname]:[port]表格。


在版本 3.2 中进行了更改:具有1 vote的 MongoDB 3.2 副本集成员无法与具有0 votes的成员同步。

Behavior

Sync Logic

在版本 3.4 中更改。

如果在运行replSetSyncFrom时正在进行初始同步操作,则replSetSyncFrom会停止进行中的初始同步并重新启动与新目标的同步过程。在以前的版本中,如果您在初始同步期间运行replSetSyncFrom,则 MongoDB 不会产生任何错误消息,但是同步目标直到初始同步操作之后才会更改。

仅根据需要修改默认的同步逻辑,请务必谨慎。

Target

要同步的成员必须是集合中数据的有效来源。要从成员同步,成员必须:

如果您尝试从比当前成员晚 10 秒以上的成员进行复制,则mongod将记录警告,但仍将从滞后成员复制。

Persistence

replSetSyncFrom提供默认行为的临时替代。在以下情况下,mongod将恢复为默认的同步行为:

有关使用replSetSyncFrom的更多信息,请参见配置辅助节点的同步目标

首页