一  简介:今天咱们来聊聊MGR的单主切换和新节点加入
二 单主模式下变成多主:
  1 3306
  STOP group_replication;
  set global group_replication_single_primary_mode=OFF; //关闭单主模式
  set global group_replication_enforce_update_everywhere_checks= ON;//打开多主模式
  set global group_replication_bootstrap_group=ON;
  START group_replication;
  set global group_replication_bootstrap_group=OFF;
 2 3307 3308
  STOP group_replication;
  set global group_replication_single_primary_mode=OFF;//关闭单主
  set global group_replication_enforce_update_everywhere_checks= ON;//打开多主
  START group_replication;

3 进行测试
3306 3307 分别建立库 查看其他实例
证明成功

4 从库恢复

STOP group_replication;
set global group_replication_enforce_update_everywhere_checks= off;
set global group_replication_single_primary_mode=on;
START group_replication;

三 如何添加节点(少数据量情况下)

1 初始化节点
  /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data_3309
2 启动节点并修改密码
 nohup /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my_3309.cnf &
 mysql -uroot -S /tmp/mysql_3309.sock -e "set password for 'root'@'localhost' = password('test');"
 mysql -uroot -ptest -S /tmp/mysql_3309.sock -e "flush privileges"
3 创建用户
set sql_log_bin=0;
GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'repl'@'%' IDENTIFIED BY 'repl';
flush privileges;
set sql_log_bin=1;
4 加入
change master to master_user='repl',master_password='repl' for channel 'group_replication_recovery';
install plugin group_replication soname 'group_replication.so';
set global group_replication_single_primary_mode=OFF;//关闭单主
set global group_replication_enforce_update_everywhere_checks= ON;//打开多主
set global group_replication_allow_local_disjoint_gtids_join=1;//这里要注意 一定要执行这步 否则会加入失败
START group_replication;

四 总结:

1 推荐单主模式,多主只是为了测试功能性

2 如果大量数据情况下,要采用备份恢复方式,不建议从头追加,一旦binlog丢失,成员将会有问题

mysql 架构~多写模式MGR的更多相关文章

  1. MGR架构~单写模式架构的搭建

    一 简介 :MGR一直没有时间测试,今天咱们来初步了解搭建一下呗 二 环境: mysql5.7.20  单台机器 启动三实例 三  mysql 搭建: 1 建立相关目录+ mkdir -p /data ...

  2. ProxySQL Cluster 高可用集群 + MySQL MGR环境部署 (多写模式) 部署记录

    文章转载自:https://blog.51cto.com/u_6215974/4937192 ProxySQL 在早期版本若需要做高可用,需要搭建两个实例,进行冗余.但两个ProxySQL实例之间的数 ...

  3. mysql 架构~mgr具体细节分析

    一 简介:今天咱们来聊聊mgr的具体实现细节 二 关于多点写入的锁冲突问题以及处理:   certify模块主要负责检查事务是否允许提交,是否与其它事务存在冲突,如两个事务可能修改同一行数据.在单机系 ...

  4. Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle

    Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle 1. 主键1 2. uniq  index2 3.  ...

  5. MySQL 8.0.15 配置 MGR单主多从

    转载自:http://www.cnblogs.com/zhangzihong/p/10443526.html 一.简介 MySQL Group Replication(简称MGR)字面意思是mysql ...

  6. ch2 MySQL 架构组成

    第 2 章 MySQL 架构组成 前言 麻雀虽小,五脏俱全.MySQL    虽然以简单著称,但其内部结构并不简单.本章从 MySQL 物理组成.逻辑组成,以及相关工具几个角度来介绍    MySQL ...

  7. mysql笔记01 MySQL架构与历史、Schema与数据类型优化

    MySQL架构与历史 1. MySQL架构推荐参考:http://www.cnblogs.com/baochuan/archive/2012/03/15/2397536.html 2. MySQL会解 ...

  8. 理解MySQL——架构与概念

    写在前面:最早接触的MySQL是在三年前,那时候MySQL还是4.x版本,很多功能都不支持,比如,存储过程,视图,触发器,更别说分布式事务等复杂特性了.但从5.0(2005年10月)开始,MySQL渐 ...

  9. MySQL 架构

    原文:MySQL 架构 MySQL架构和结构分析 官方架构图: MySQL DB 各模块架构图如下: MySQL安装方式 MySQL初始化 简介:什么是事务: 事务: ACID :  事务确保了银行不 ...

随机推荐

  1. android studio marvin 配置

    buildscript { repositories { maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'} } } ...

  2. Ubuntu 安装 hadoop

    安装完Linux后,我们继续(VMWare 安装 Linux  http://blog.csdn.net/hanjun0612/article/details/55095955) 这里我们开始学习安装 ...

  3. lightoj1038(数学期望dp)

    题意:输入一个数N,N每次被它的任意一个因数所除 变成新的N 这样一直除下去 直到 N变为1 求变成1所期望的次数 解析: d[i] 代表从i除到1的期望步数:那么假设i一共有c个因子(包括1和本身) ...

  4. Shell基础知识(三)

    Shell中变量的作用域: 在当前Shell会话中使用,全局变量. 在函数内部使用,局部变量. 可以在其他Shell会话中使用,环境变量. 局部变量: 默认情况下函数内的变量也是全局变量 #!/bin ...

  5. 洛谷 [HNOI2014]道路堵塞 解题报告

    [HNOI2014]道路堵塞 题意 给一个有向图并给出一个这个图的一个\(1\sim n\)最短路,求删去这条最短路上任何一条边后的最短路. 又事SPFA玄学... 有个结论,新的最短路一定是\(1\ ...

  6. JDK源码分析(4)HashSet

    JDK版本 HashSet简介 HashSet特点 非线程安全 允许null值 添加值得时候会先获取对象的hashCode方法,如果hashCode 方法返回的值一致,则再调用equals方法判断是否 ...

  7. 字节流转字符流OutputStreamWriter、InputStreamReader,关闭流的方法

    转换时可以指定编码格式:GBK.UTF-8 public class Demo { public static void main(String[] args) { File f = new File ...

  8. mybatis返回部分字段为空的问题

    问题: 在数据库查询的时候可以正常返回值,在程序中只能返回一部分字段,其他字段为null. 错误原因: 将resultType改为resultMap https://www.cnblogs.com/i ...

  9. centos服务重启

    重启openstack的整个服务openstack-service restart 1. 重启dashboardservice httpd restart service memcached rest ...

  10. git杂记:忽略ssl认证

        当你通过HTTPS访问Git远程仓库,如果服务器的SSL证书未经过第三方机构签署,那么Git就会报错.这是十分合理的设计,毕竟未知的没有签署过的证书意味着很大安全风险.但是,如果你正好在架设G ...