MGR群集搭建

MGR群集搭建

环境

IP地址 主机名 数据库 端口号 Server_ID 操作系统
192.168.144.10 apenglinux-001.cn MySQL5.7.26 3306 100 CentOS7.5
192.168.144.20 apenglinux-002.cn MySQL5.7.26 3306 101 CentOS7.5
192.168.144.30 apenglinux-003.cn MySQL5.7.26 3306 102 CentOS7.5

single master 模式

  • 三台机作ip与主机名的映射关系
vim /etc/hosts   -- 加入以下内容
192.168.144.10 apenglinux-001.cn
192.168.144.20 apenglinux-002.cn
192.168.144.30 apenglinux-003.cn
  • 单主master主机为apenglinux-001.cn

    vim /etc/my.cnf      -- 加入以下内容
    server_id=100
    gtid_mode=on
    enforce_gtid_consistency=on
    transaction_write_set_extraction=XXHASH64
    log_bin=apenglinux
    binlog_checksum=none
    binlog_format=row
    log_slave_updates=on
    master_info_repository=table
    relay_log_info_repository=table
    loose_group_replication_group_name=‘70546c9a-5a52-46a4-84ee-141ca4359966‘
    loose_group_replication_local_address=‘apenglinux-001.cn:10001‘
    loose_group_replication_start_on_boot=off
    loose_group_replication_group_seeds=‘apenglinux-001.cn:10001,apenglinux-002.cn:10002,apenglinux-003.cn:10003‘
    loose_group_replication_group_bootstrap_group=off
  • 重启mysqld
  • 连接mysql,到(apenglinux-001.cn)mysql里的操作如下
mysql> set sql_log_bin=off;
mysql> grant replication slave on *.* to [email protected]‘192.168.144.%‘ identified by ‘123456‘;
mysql> flush privileges;
mysql> set sql_log_bin=on;
mysql> change master to master_user=‘repl‘,master_password=‘123456‘ for channel ‘group_replication_recovery‘;
mysql> install plugin group_replication soname ‘group_replication.so‘;
mysql> set global group_replication_bootstrap_group=on;
mysql> start group_replication;
mysql> set global group_replication_bootstrap_group=off;
mysql> select * from performance_schema.replication_group_members;     -- 以下是查询到的内容
+---------------------------+--------------------------------------+-------------------+-------------+--------------+
| CHANNEL_NAME              | MEMBER_ID                            | MEMBER_HOST       | MEMBER_PORT | MEMBER_STATE |
+---------------------------+--------------------------------------+-------------------+-------------+--------------+
| group_replication_applier | 8ea873c2-8f71-11e9-bbb4-000c298347f1 | apenglinux-001.cn |        3306 | ONLINE       |
+---------------------------+--------------------------------------+-------------------+-------------+--------------+
  • 从服务器(apenglinux-002.cn)的配置

    vim /etc/my.cnf    --  跟 apenglinux-001.cn一样的配置,只需要修改以下两行
    server_id=101
    loose_group_replication_local_address=‘apenglinux-002.cn:10002‘
    重启mysqld
    连接msyql,到mysql里的操作如下
    mysql> set sql_log_bin=off;
    mysql> grant replication slave on *.* to [email protected]‘192.168.144.%‘ identified by ‘123456‘;
    mysql> flush privileges;
    mysql> set sql_log_bin=on;
    mysql> change master to master_user=‘repl‘,master_password=‘123456‘ for channel ‘group_replication_recovery‘;
    mysql>  install plugin group_replication soname ‘group_replication.so‘;
    mysql> set global group_replication_allow_local_disjoint_gtids_join=on;
    mysql> start group_replication;
    mysql> select * from performance_schema.replication_group_members;
    +---------------------------+--------------------------------------+-------------------+-------------+--------------+
    | CHANNEL_NAME              | MEMBER_ID                            | MEMBER_HOST       | MEMBER_PORT | MEMBER_STATE |
    +---------------------------+--------------------------------------+-------------------+-------------+--------------+
    | group_replication_applier | 8ea873c2-8f71-11e9-bbb4-000c298347f1 | apenglinux-001.cn |        3306 | ONLINE       |
    | group_replication_applier | a049b503-8f72-11e9-ba4b-000c2906c8f7 | apenglinux-002.cn |        3306 | ONLINE       |
    +---------------------------+--------------------------------------+-------------------+-------------+--------------+
  • 从服务器apenglinux-003.cn的配置(与apenglinux-002.cn一样的配置),下面是要修改的
vim /etc/my.cnf
server_id=102
loose_group_replication_local_address=‘apenglinux-003.cn:10003‘

mysql> select * from performance_schema.replication_group_members;
+---------------------------+--------------------------------------+-------------------+-------------+--------------+
| CHANNEL_NAME              | MEMBER_ID                            | MEMBER_HOST       | MEMBER_PORT | MEMBER_STATE |
+---------------------------+--------------------------------------+-------------------+-------------+--------------+
| group_replication_applier | 8ea873c2-8f71-11e9-bbb4-000c298347f1 | apenglinux-001.cn |        3306 | ONLINE       |
| group_replication_applier | a049b503-8f72-11e9-ba4b-000c2906c8f7 | apenglinux-002.cn |        3306 | ONLINE       |
| group_replication_applier | d9fd5ea2-8f73-11e9-8f3b-000c29096feb | apenglinux-003.cn |        3306 | ONLINE       |
+---------------------------+--------------------------------------+-------------------+-------------+--------------+
  • 查看单主模式的主节点(所有的节点都可以查看)

    mysql> show global status like ‘%primary%‘;
    +----------------------------------+--------------------------------------+
    | Variable_name                    | Value                                |
    +----------------------------------+--------------------------------------+
    | group_replication_primary_member | 8ea873c2-8f71-11e9-bbb4-000c298347f1 |
    +----------------------------------+--------------------------------------+

MGR的多主模式

在 apenglinux-001.cn主机上的设置:
停止MGR,关掉单主模式,开启多主模式,开启引导组,开启mgr,关闭引导组

mysql> stop group_replication;
mysql> set global group_replication_single_primary_mode=off;
mysql> set global group_replication_enforce_update_everywhere_checks=on;
mysql> set global group_replication_bootstrap_group=on;
mysql> start group_replication;
mysql> set global group_replication_bootstrap_group=off;

在apenglinux-002.cn,apenglinux-003.cn上的设置:
停止mgr,允许写入,加入组,关掉单主模式,开启多主模式,开启mgr

mysql> stop group_replication;
mysql> set global read_only=off,super_read_only=off;
mysql> set global group_replication_allow_local_disjoint_gtids_join=on;
mysql> set global group_replication_single_primary_mode=off;
mysql> set global group_replication_enforce_update_everywhere_checks=on;
mysql> start group_replication;

查看成员信息

mysql> select * from performance_schema.replication_group_members;
+---------------------------+--------------------------------------+-------------------+-------------+--------------+
| CHANNEL_NAME              | MEMBER_ID                            | MEMBER_HOST       | MEMBER_PORT | MEMBER_STATE |
+---------------------------+--------------------------------------+-------------------+-------------+--------------+
| group_replication_applier | 8ea873c2-8f71-11e9-bbb4-000c298347f1 | apenglinux-001.cn |        3306 | ONLINE       |
| group_replication_applier | a049b503-8f72-11e9-ba4b-000c2906c8f7 | apenglinux-002.cn |        3306 | ONLINE       |
| group_replication_applier | d9fd5ea2-8f73-11e9-8f3b-000c29096feb | apenglinux-003.cn |        3306 | ONLINE       |
+---------------------------+--------------------------------------+-------------------+-------------+--------------+

原文地址:https://blog.51cto.com/13480443/2411410

时间: 2024-10-10 01:15:13

MGR群集搭建的相关文章

lvs负载均衡群集搭建(DR)

lvs负载均衡群集搭建(DR) 1:之前有讲过使用NAT技术的lvs的群集搭建接下来使用DR的直接路由模式来搭建负载均衡群集 2:在DR模式中.lvs负载调度器作为群集的访问入口,但不作为网关使用,服务器池中的所有节点来自internet.发送给客户端的web相应数据包不需要经过负载调度器:这种方式入站.出站访问数据分别被处理,因此lvs负载调度器和所有节点服务器都需要配置VIP地址,以便响应整个群集的访问. VIP地址192.168.1.254 负载均衡服务器           web1服务

Rabbitmq群集搭建

Rabbitmq群集搭建 实验介绍 MQ(Message Queue消息队列)是一种应用程序对应用程序的通信方法.应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用链接来连接他们.消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术.排队指的是应用程序通过队列来通信.队列的使用除去接收和发送应用程序同时执行的要求. RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用

数据库_MHA群集搭建

MHA概念介绍,群集搭建与测试 一, MHA介绍 1.概念:MHA master high availability,由日本DeNA公司开发,解决mysql故障切换可以做到0-30秒,而且在故障切换过程中,能最大限度保障数据的一致性,实现真正的高可用. 2.组成:管理节点(MHA manager),管理所有数据库服务器,可以部署于一台独立的主机,也可以与某台数据库服务器共用一台主机;数据节点(MHA node),运行在每台存储数据的服务器上. 3.原理:由manager探测集群中的master节

ElasticSearch群集搭建介绍,实现高可用

ElasticSearch简介:ElasticSearch 是一个分布式.高扩展.高实时的搜索与数据分析引擎.它能很方便的使大量数据具有搜索.分析和探索的能力.充分利用ElasticSearch的水平伸缩性,能使数据在生产环境变得更有价值.ElasticSearch 的实现原理主要分为以下几个步骤,首先用户将数据提交到Elastic Search 数据库中,再通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据,当用户搜索数据时候,再根据权重将结果排名,打分,再将返回结果呈现给用户.

Redis群集搭建

Redis群集搭建 实验环境 两台Centos 7虚拟机,均添加三块网卡用以模拟六台服务器实景 服务器角色 IP地址 centos7-1 主节点M1 192.168.142.130 centos7-2 主节点M2 192.168.142.145 centos7-3 主节点M3 192.168.142.146 centos7-4 从节点S1 192.168.142.143 centos7-5 从节点S2 192.168.142.147 centos7-min 从节点S3 192.168.142.1

haproxy群集搭建web群集

 haproxy群集调度器搭建web群集 1:haproxy调度器是目前市场上比较流行的群集调度器,当然调度器有好多种类:lvs.nginx.和haproxy,接下来对它们进行比较看看它们的优缺点: lvs:工作在七层模型的4层传输层:根据ip+端口进行访问:不考虑访问的内容,可以任意访问,基于ip地址,能实现所有应用构建的群集,性能好,可以和keepalived完美结合.稳定性能好.健康检查节点服务器性能较好:搭建时结构相对复杂 nginx:工作在7层应用层,根据内容.ip网页进行给用户分配内

Swarm群集搭建

Swarm是一套极为简单管理docker集群工具,使得docker集群暴露给用户的是一个虚拟整体.搭建环境:关闭防火墙和安全linux[[email protected] ~]# systemctl stop firewalld[[email protected] ~]# setenforce 0分别修改主机名:[[email protected] ~]# vi /etc/hostnameswarm01swarm02重启并分别添加一张桥接网卡联网[[email protected] ~]# sy

Nginx+Tomcat负载均衡群集搭建

Tomcat简介 Tomcat最初是由Sun的软件构架师詹姆斯邓肯.戴维森开发 安装完Tomcat后安装路径下面的目录和文件,是使用或者配置Tomcat的重要文件 Tomcat重要目录 bin:存放启动和关闭Tomcat脚本 conf:存放Tomcat不同的配置文件 doc:存放Tomcat文档 lib/japser/common:存放Tomcat运行需要的库文件 logs:存放Tomcat执行时的LOG文件 src:存放Tomcat的源代码 webapps:Tomcat的主要Web发布目录 w

mysql群集搭建案例解析

Mysql cluster技术概览 DB Management Server:管理服务器主要用于管理cluster中的其他类型节点(Data Node和SQL Node),通过它可以配置Node信息,启动和停止Node. SQL Node:在MySQL Cluster中,一个SQL Node就是一个使用NDB引擎的mysql server进程,用于供外部应用提供集群数据的访问入口.Data Node:用于存储集群数据:系统会尽量将数据放在内存中. Cluster只支持nbd这种存储引擎,对内存要