![](/img/trans.png)
[英]My mongodb as primary replica set and mongodb atlas as secondary replica set
[英]MongoDB Primary replica set member syncing to secondary
我有一个包含三个成员的副本集,其中host0:27100
为主要成员。 最近,我更改了配置,使host2:27102
成为主要成员。 关注了这些文档。
更改配置后, rs.status()
输出表明host1:27101
是"syncingTo" : "host2:27102"
。
但是新的主host2:27102
的输出显示它是"syncingTo" : "host0:27100"
,它是先前的主成员,并已更改为辅助成员。
我不明白为什么将其同步到次要成员。 这是正常现象吗?
s0:SECONDARY> rs.status()
{
"set" : "s0",
"date" : ISODate("2013-09-25T12:31:42Z"),
"myState" : 2,
"syncingTo" : "host2:27102",
"members" : [
{
"_id" : 0,
"name" : "host0:27100",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 428068,
"optime" : Timestamp(1380112272, 1),
"optimeDate" : ISODate("2013-09-25T12:31:12Z"),
"self" : true
},
{
"_id" : 1,
"name" : "host1:27101",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 397,
"optime" : Timestamp(1380112272, 1),
"optimeDate" : ISODate("2013-09-25T12:31:12Z"),
"lastHeartbeat" : ISODate("2013-09-25T12:31:42Z"),
"lastHeartbeatRecv" : ISODate("2013-09-25T12:31:41Z"),
"pingMs" : 10,
"syncingTo" : "host2:27102"
},
{
"_id" : 2,
"name" : "host2:27102",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 397,
"optime" : Timestamp(1380112272, 1),
"optimeDate" : ISODate("2013-09-25T12:31:12Z"),
"lastHeartbeat" : ISODate("2013-09-25T12:31:42Z"),
"lastHeartbeatRecv" : ISODate("2013-09-25T12:31:41Z"),
"pingMs" : 2,
"syncingTo" : "host0:27100"
}
],
"ok" : 1
}
这是一个已知的问题。 如果当前主数据库过去是辅助数据库( SERVER-9989 ),则有一个关于rs.status()的公开票证,当从辅助数据库运行时,主数据库显示为syncingTo。 修复版本为2.5.1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.