企业项目管理、ORK、研发管理与敏捷开发工具平台

网站首页 > 精选文章 正文

基于MGR单主模式测试集群复制及节点切换

wudianyun 2025-08-01 21:47:59 精选文章 3 ℃

概述

前面介绍了MGR单主模式的部署及常见报错,今天主要介绍一下测试MGR的集群复制和主节点切换这两个特性。


一、MGR单主(Single-Primary)模式测试集群复制功能

1、查看MGR的状态

select * from performance_schema.replication_group_members;


2、在主节点创建数据库、表及插入数据

create database t;
use t;
create table t(id int,name varchar(10),primary key(id));
insert into t values (1,'t'),(2,'tt'),(3,'qw'),(4,'oo');


3、从节点验证集群复制功能

在mgr2/mgr3可以看到数据已经同步过来,在mgr2/mgr3上执行inert操作,则拒绝,因为mgr2、mgr3为readonly


二、MGR单主(Single-Primary)模式测试集群主节点切换功能

1、查看主节点

可以看到5aa6为主节点

select variable_name,member_id,member_host,member_port from 
performance_schema.global_status a,performance_schema.replication_group_members b 
where a.variable_value=b.member_id;


2、停止5aa6的group_replication,可以看到它的状态已经变成了offline

stop group_replication;
select * from performance_schema.replication_group_members;


3、从节点上查看当前group的状态

select * from performance_schema.replication_group_members;


4、查看当前group的主节点

可以看到此时主节点发生了变化,5abe升级成为主节点

select variable_name,member_id,member_host,member_port from performance_schema.global_status
a,performance_schema.replication_group_members b where a.variable_value=b.member_id;


5、修复5aa6,重新加入到group_replication中,此时查看group_replication的状态

set global group_replication_allow_local_disjoint_gtids_join=ON;
start group_replication;
select * from performance_schema.replication_group_members;


从上面的实验可以知道当MGR中的主节点宕机时,会重新选择新的master,当旧的master恢复加入后,新master不会发生改变。


后面会分享更多devops和DBA方面内容,感兴趣的朋友可以关注下~


Tags:

最近发表
标签列表