mysql MGR 单主多主模式切换

主库执行
CREATE DATABASE test CHARACTER SET utf8 COLLATE utf8_general_ci;
use test;
create table if not exists h1 (id int(10) PRIMARY KEY AUTO_INCREMENT,name varchar(50) NOT NULL);
insert into test.h1 values(1,"wang"),(2,"guo"),(3,"yang"),(4,"he");
select * from test.h1;

从库测试
delete from test.h1 where id>3;
ERROR 1290 (HY000): The MySQL server is running with the --super-read-only option so it cannot execute this statement

1、单主切换到多主模式
1.1、停止组复制(在所有MGR节点上执行):
stop group_replication;
set global group_replication_single_primary_mode=OFF;
set global group_replication_enforce_update_everywhere_checks=ON;

1.2、随便某个mgr节点执行:186
SET GLOBAL group_replication_bootstrap_group=ON;
START GROUP_REPLICATION;
SET GLOBAL group_replication_bootstrap_group=OFF;

1.3、然后在其它mgr节点执行:194 195
START GROUP_REPLICATION;

1.4、查看mgr组信息(任意MGR节点查看)
SELECT * FROM performance_schema.replication_group_members;

可以看到所有MGR节点状态都是online,角色都是PRIMARY,MGR多主模式搭建成功。
验证下MGR多主模式的节点数据同步:
在MGR-node1节点更新数据:
在MGR-node2节点更新数据
在MGR-node3节点更新数据
MGR多主模式下, 所有节点都可以进行读写操作.

2、切回单主模式
2.1、停止组复制(在所有MGR节点上执行):
stop group_replication;
set global group_replication_enforce_update_everywhere_checks=OFF;
set global group_replication_single_primary_mode=ON;

2.2、选择一个节点作为主节点,在主节点上执行(186):
SET GLOBAL group_replication_bootstrap_group=ON;
START GROUP_REPLICATION;
SET GLOBAL group_replication_bootstrap_group=OFF;

2.3、在剩余节点,也就是从库节点上执行(194 195):
START GROUP_REPLICATION;

2.4、查看MGR组信息(任意MGR节点上都可查看):
SELECT * FROM performance_schema.replication_group_members;

切回单主模式,主具有读写权限,另外两个从节点只读不可写.

设置MGR组集群的白名单网段: 添加节点所在网段

stop group_replication;
set global group_replication_ip_whitelist="127.0.0.1/32,172.16.60.0/24,172.16.50.0/24,172.16.51.0/24";
start group_replication;
show variables like "group_replication_ip_whitelist";

原文地址:https://www.cnblogs.com/xiefugui/p/12388860.html

时间: 2024-10-31 01:47:25

mysql MGR 单主多主模式切换的相关文章

MySQL 5.7 MGR单主确定主节点方法

我们行MGR年底要上线了,每天都要看官方文档学习,做测试,坚持每天写一个小知识点,有想一起学习的么~ MySQL 5.7 MGR单主确定主节点是哪个,我们可以通过成员ID来判断,然后结合read_only参数来确认. [[email protected] ~]# mysql -uroot -p -P 3306 -h 127.0.0.1 mysql: [Warning] Using a password on the command line interface can be insecure.

MySQL MGR集群单主模式的自动搭建和自动化故障修复

/*the waiting game:尽管人生如此艰难,不要放弃:不要妥协:不要失去希望*/ 随着MySQL MGR的版本的升级以及技术成熟,在把MHA拉下神坛之后, MGR越来越成为MySQL高可用的首选方案.MGR的搭建并不算很复杂,但是有一系列手工操作步骤,为了简便MGR的搭建和故障诊断,这里完成了一个自动化的脚本,来实现MGR的自动化搭建,自动化故障诊断以及修复. MGR自动化搭建为了简便起见,这里以单机多实例的模式进行测试,先装好三个MySQL实例,端口号分别是7001,7002,70

mysql数据库单表只有一个主键自增id字段,ibatis实现id自增

mysql数据库单表只有一个主键自增id字段,ibatis实现id自增 <insert id="autoid">        insert into user_id values(null)        <selectKey resultClass="int">SELECT @@IDENTITY As id</selectKey>    </insert>

MySQL双主(主主)架构方案

在企业中,数据库高可用一直是企业的重中之重,中小企业很多都是使用mysql主从方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动.因此,如果是双主或者多主,就会增加mysql入口,增加高可用.不过多主需要考虑自增长ID问题,这个需要特别设置配置文件,比如双主,可以使用奇偶,总之,主之间设置自增长ID相互不冲突就能完美解决自增长ID冲突问题. 主从同步复制原理 在开始之前,我们先来了解主从同步复制原理. 复制分成三步: 1. master将改变记录到二进制日志(binary

mycat分布式mysql中间件(自增主键)

一.全局序列号 全局序列号是MyCAT提供的一个新功能,为了实现分库分表情况下,表的主键是全局唯一,而默认的MySQL的自增长主键无法满足这个要求.全局序列号的语法符合标准SQL规范,其格式为:next value for MYCATSEQ_XXXMYCATSEQ_XXX 是序列号的名字,MyCAT自动创建新的序列号,免去了开发的复杂度,另外,MyCAT也提供了一个全局的序列号,名称为:MYCATSEQ_GLOBAL 注意,MYCATSEQ_必须大写才能正确识别.MyCAT温馨提示:实践中,建议

Mysql 5.6.27 双主模型&&主备模型安装测试

http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-5.6.27-1.el6.x86_64.rpm-bundle.tar 测试环境:    两台服务器          MYSQL-1:10.11.22.78          MYSQL-2:10.11.22.248    测试系统          Centos 6.5_64    Mysql版本          MySQL-5.6.27    Keepalived版本          k

mysql高可用方案之主主架构(master-master)

mysql的主从是将主服务器操作记录写入二进制日志文件,然后通过mysql dump线程将日志传到从服务器中继日志中,从服务器在中继日志读取信息并执行.mysql主主架构原理和主从差不多,只是两台服务器都要开启二进制日志文件,并互相传送给对方读取日志中的内容,使数据同步.两台服务器可以同时读也可以同时写,但不能解决单点故障. 环境规划: 主机名:tong2   IP:192.168.1.248 主机名:tong3   IP:192.168.1.249 数据库:mysql-5.6.21 1.配置服

Mysql,SqlServer,Oracle主键自动增长的设置

1.把主键定义为自动增长标识符类型 MySql 在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如:   customers(id  auto_increment    , name (  customers(name)  id  customers; 以上sql语句先创建了customers表,然后插入两条记录,在插入时仅仅设定了name字段的值.最后查询表中id字段,查询结果为: 由此可见,一旦把id设为auto_increment类型,mys

MySQL Replication, 主从和双主配置

MySQL Replication, 主从和双主配置 MySQL的Replication是一种多个MySQL的数据库做主从同步的方案,特点是异步,广泛用在各种对MySQL有更高性能,更高可靠性要求的场合.与之对应的另一个技术是同步的MySQL Cluster,但因为比较复杂,使用者较少.   下图是MySQL官方给出了使用Replication的场景: Replication原理   Mysql 的 Replication 是一个异步的复制过程,从一个MySQL节点(称之为Master)复制到另