On this page本页内容
To configure a delayed secondary member, set its members[n].priority
value to 0
, its members[n].hidden
value to true
, and its members[n].slaveDelay
value to the number of seconds to delay.
Important
The length of the secondary members[n].slaveDelay
must fit within the window of the oplog. If the oplog is shorter than the members[n].slaveDelay
window, the delayed member cannot successfully replicate operations.
When you configure a delayed member, the delay applies both to replication and to the member’s oplog. For details on delayed members and their uses, see Delayed Replica Set Members.
The following example sets a 1-hour delay on a secondary member currently at the index 0
in the members
array. To set the delay, issue the following sequence of operations in a mongo
shell connected to the primary:
After the replica set reconfigures, the delayed secondary member cannot become primary and is hidden from applications. The members[n].slaveDelay
value delays both replication and the member’s oplog by 3600 seconds (1 hour).
When updating the replica configuration object, access the replica set members in the members
array with the array index. The array index begins with 0
. Do not confuse this index value with the value of the members[n]._id
field in each document in the members
array.
Warning
rs.reconfig()
shell method can force the current primary to step down, which causes an election. When the primary steps down, the mongod
closes all client connections. While this typically takes 10-20 seconds, try to make these changes during scheduled maintenance periods.