繁体   English   中英

MongoDB主副本集成员同步到辅助副本

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM