翻译或纠错本页面

更换复制集节点

On this page

我如果我们需要修改复制集节点的主机名而不修改其他配置,那么本文描述的操作将有所帮助。举个例子,如果我们必须重装系统或是修改主机名,我们就可以用下列操作来尽可能减少变动。

操作

To change the hostname for a replica set member modify the members[n].host field. The value of members[n]._id field will not change when you reconfigure the set.

参见 Replica Set Configurationrs.reconfig() 以获得更多信息。

注解

复制集的任何配置变动都会使 primary 降职,并进行 election 。在选举过程中,所有已经建立的链接将会释放,这将返回一个错误,及时操作执行成功了。

范例

我们可以通过下列命令来将复制集的 members[0]``节点的主机名修改为 ``mongo2.example.net

cfg = rs.conf()
cfg.members[0].host = "mongo2.example.net"
rs.reconfig(cfg)