MongoDB故障转移案例详细操作

MOngoDB故障转移

文章目录

  • MOngoDB故障转移
    • 1.数据库提权操作
      • 1.1.使用命令查询主库信息
      • 1.2.给db02升级权重
      • 1.3.修改完成后进行加载配置
      • 1.4.主库执行降级操作
    • 2.恢复主库权限
      • 2.1.先给库权重降低
      • 2.2.执行降级命令
      • 2.3.恢复成功

MongoDB的主从目前是我们在配置副本集的时候设置

但是如果想更换其他服务器为主库,就需要手动给某台服务器进行升级操作,下面我们来举例

我们手动的给某台机器升级

MongoDB主库 28017 db01
MongoDB从库 28018 db02
MongoDB从库 28018 db03

1.数据库提权操作

举例:我们来给db02提升为主库

使用rs.conf()命令可以查看权重

dba1:PRIMARY> rs.conf()

MongoDB故障转移案例详细操作_第1张图片

1.1.使用命令查询主库信息

dba1:PRIMARY> rs.status()

MongoDB故障转移案例详细操作_第2张图片

1.2.给db02升级权重

注意此命令需要在主库执行!

举例:[1]代表id为1的库
config.members[1].priority=10

修改成功
dba1:PRIMARY> config.members[1].priority=10

1.3.修改完成后进行加载配置

dba1:PRIMARY> rs.reconfig(config)
{
	"ok" : 1,
	"operationTime" : Timestamp(1668248037, 1),
	"$clusterTime" : {
		"clusterTime" : Timestamp(1668248037, 1),
		"signature" : {
			"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
			"keyId" : NumberLong(0)
		}
	}
}

然后在进行查看
dba1:PRIMARY> rs.config()

可以看到权重已经变成了10
MongoDB故障转移案例详细操作_第3张图片

1.4.主库执行降级操作

使用此条命令后数据库会重新进行选举
dba1:PRIMARY> rs.stepDown()
可以查看到主节点已经变更为id为1的库
dba1:PRIMARY> rs.status()

MongoDB故障转移案例详细操作_第4张图片

2.恢复主库权限

我们恢复的话,还是执行一遍刚才的命令

2.1.先给库权重降低

权重重新降低为1

dba1:PRIMARY> config.members[1].priority=1

dba1:PRIMARY> rs.reconfig(config)

2.2.执行降级命令

发起重新选举

dba1:PRIMARY> rs.stepDown()

2.3.恢复成功

dba1:PRIMARY> rs.status()

MongoDB故障转移案例详细操作_第5张图片

你可能感兴趣的:(MongoDB,mongodb,数据库,nosql)