mysql5.7 MRG集群部署学习
文章目录
1、安装mysql
2、修改配置文件:
3、安装group_replicatin插件,启动group_replication
4、添加节点node-02 node-03:
有关复制组的相关原理介绍:http://note.youdao.com/noteshare?id=9eb41d6de1af00e41314297282a43bc1
环境:
ip hostname
192…168.8.80 node-01
192…168.8.81 node-02
192…168.8.83 node-03
1、安装mysql
[root@mysql]# yum install http://www.percona.com/downloads/percona-release/redhat/0.1-6/percona-release-0.1-6.noarch.rpm
[root@mysql]# yum -y install Percona-Server-server-57
[root@mysql]# cat /var/log/mysqld.log |grep "root@localhost"
2018-11-02T05:41:32.373113Z 1 [Note] A temporary password is generated for root@localhost: m-3SAGso6w43
[root@mysql]# mysql -uroot -pm-3SAGso6w43
mysql> show variables like '%vali%';
mysql> set global validate_password_length=4;
mysql> alter user 'root'@'localhost' identified by 'root123';
2、修改配置文件:
my.cnf配置文件里修改参数: server-id、loose-group_replication_local_address
[mysqld]
pid-file=/var/run/mysqld/mysqld.pid
log-error=/var/log/mysqld.log
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
server-id = 101
log-bin = master-bin
log-bin-index = master-bin.index
binlog_format = row
gtid-mode = ON
enforce-gtid-consistency = ON
log-bin=mysql-bin
log-slave-updates
master_info_repository=TABLE
relay_log_info_repository=TABLE
binlog_checksum=NONE
## group replication 配置
#如果server启动时尚未加载复制插件,group_replicaton 变量使用loose-前缀将指示server继续启动。
transaction_write_set_extraction=XXHASH64 #表示server必须为每个事物收集写集合,并使用XXHASH64 哈希算法将其编码为散列。
loose_group_replication_start_on_boot=OFF
loose-group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
loose-group_replication_start_on_boot=off
loose-group_replication_local_address="192..168.8.80:33061"
loose-group_replication_group_seeds="192..168.8.80:33061,192..168.8.81:33061,192..168.8.83:33061"
loose-group_replication_bootstrap_group= off
loose-group_replication_single_primary_mode=FALSE
loose-group_replication_enforce_update_everywhere_checks= TRUE
loose-group_replication_ip_whitelist="192..168.8.80,192..168.8.81,192..168.8.83"
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
3、安装group_replicatin插件,启动group_replication
[root@mysql]# mysql -uroot -proot123
mysql> set sql_log_bin=0;
mysql> grant replication slave on *.* to 'rep'@'%' identified by 'rep123';
mysql> flush privileges;
mysql> set sql_log_bin=1;
mysql> change master to master_user=www.mcyllpt.com 'rep',master_password='rep123' for channel 'group_replication_recovery';
mysql> install plugin group_replication soname 'group_replication.so';
mysql> show plugins;
+-----------------------------+----------+--------------------+----------------------+---------+
| Name | Status | Type | Library | License |
+-----------------------------+----------+--------------------+----------------------+---------+
| group_replication | ACTIVE | GROUP REPLICATION | group_replication.so | GPL |
+-----------------------------+----------+--------------------+----------------------+---------+
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 | f38e5798-de61-11e8-91e6-fa163e180951 | node-01 | 3306 | ONLINE |
+---------------------------+--------------------------------------+---------------------+-------------+--------------+
4、添加节点node-02 node-03:
安装mysql、my.cnf 同上
安装group_replicatin插件,启动group_replication
mysql> set sql_log_bin=0;
mysql> grant replication slave on www.xgll521.com *yongshiyule178.com.* to 'rep'@'%' identified by 'rep123';
mysql> flush privileges;
mysql> set sql_log_bin=1;
mysql> change master to master_user='rep',master_password='rep123' for channel 'group_replication_recovery';
mysql> set global group_replication_allow_local_disjoint_www.michenggw.com gtids_join=ON;
mysql> start group_replication;
mysql> select * from performance_www.yigouyule2.cn schema.replication_group_members;
+---------------------------+--------------------------------------+---------------------+-------------+--------------+
| CHANNEL_NAME | MEMBER_ID | MEMBER_HOST | MEMBER_PORT | MEMBER_STATE |
+---------------------------+--------------------------------------+---------------------+-------------+--------------+
| group_replication_applier | 433cc62e-dd00-11e8-a653-fa163e4f3761 | node-03 | 3306 | ONLINE |
| group_replication_applier | af4e8b5d-bc99-11e8-9ad1-fa163e230ff6 | node-02 | 3306 | ONLINE |
| group_replication_applier | f38e5798-de61-11e8-91e6-fa163e180951 | node-01 | 3306 | ONLINE |
+---------------------------+--------------------------------------+---------------------+-------------+-------------
mysql5.7 MRG集群部署学习的更多相关文章
- mysql5.7.25集群部署和方案设计(附PXC一键部署脚本)
还记得我们之前部署mysql集群有多麻烦嘛?波哥来救你们啦!~ 我已将项目上传到了我的github仓库中,大家可以点击仓库地址出现的连接登录查看相应的代码!如果觉得不错别忘了转发.点赞哦! 部署步骤: ...
- k8s 集群部署--学习
kubernetes是google开源的容器集群管理系统,提供应用部署.维护.扩展机制等功能,利用kubernetes能方便管理跨集群运行容器化的应用,简称:k8s(k与s之间有8个字母) Pod:若 ...
- Elasticsearch学习总结 (Centos7下Elasticsearch集群部署记录)
一. ElasticSearch简单介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticse ...
- rocketmq学习(二) rocketmq集群部署与图形化控制台安装
1.rocketmq图形化控制台安装 虽然rocketmq为用户提供了使用命令行管理主题.消费组以及broker配置的功能,但对于不够熟练的非运维人员来说,命令行的管理界面还是较难使用的.为此,我们可 ...
- Docker学习-Kubernetes - 集群部署
Docker学习 Docker学习-VMware Workstation 本地多台虚拟机互通,主机网络互通搭建 Docker学习-Docker搭建Consul集群 Docker学习-简单的私有Dock ...
- Quartz学习笔记:集群部署&高可用
Quartz学习笔记:集群部署&高可用 集群部署 一个Quartz集群中的每个节点是一个独立的Quartz应用,它又管理着其他的节点.这就意味着你必须对每个节点分别启动或停止.Quartz集群 ...
- Dubbo入门到精通学习笔记(二十):MyCat在MySQL主从复制的基础上实现读写分离、MyCat 集群部署(HAProxy + MyCat)、MyCat 高可用负载均衡集群Keepalived
文章目录 MyCat在MySQL主从复制的基础上实现读写分离 一.环境 二.依赖课程 三.MyCat 介绍 ( MyCat 官网:http://mycat.org.cn/ ) 四.MyCat 的安装 ...
- Cassandra1.2文档学习(7)—— 规划集群部署
数据参考:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/a ...
- kafka学习总结之集群部署和zookeeper
1. 集群部署 kafka集群的瓶颈主要在网络和磁盘上:kafka依赖于zookeeper,zookeeper集群的节点采用奇数个,3个节点允许一个节点失败,5个节点允许2个节点失败. 图 1 ka ...
随机推荐
- SpringBoot学习(1)
springboot的自动配置功能,主要流程如下: 1 启动的时候加载我们的主配置类,也就是我们的入口类:从而开启我们的自动配置配置功能,这个是通过@EnableAutoConfiguration注解 ...
- php安装php-redis扩展
下载安装php-redis扩展: 地址:https://github.com/phpredis/phpredis/ $ wget http://pecl.php.net/get/redis-3.1.2 ...
- windows环境下安装scrapy框架报错问题--最快捷有效的解决方案
windows在执行如下命令,安装scrapy的过程中会报错: pip install scrapy 报错分析: windows环境下,会出现如下错误: 1.提示的错误是编译环境的问题,字面意思看需要 ...
- C++ 求阶乘
#include<iostream> using namespace std; ; //输入阶乘数 int main() { long long factorial[size]; fact ...
- python 推导式的用法
推导式看了不少,可每次都有新发现 例子1:返回满足条件为真,否则为假 try_list = [1, 2, 3, 4, 5] # 前2种一样, [a > 3 for a in b] [True i ...
- c/c++容器操作
C++中的容器大致可以分为两个大类:顺序容器和关联容器.顺序容器中包含有顺序容器适配器. 顺序容器:将单一类型元素聚集起来成为容器,然后根据位置来存储和访问这些元素.主要有vector.list.de ...
- 《.NET 微服务:适用于容器化 .NET 应用的体系结构》关键结论
作为总结和要点,以下是本指南中最重要的结论.1 使用容器的好处: 基于容器的解决方案有节约成本的好处,因为容器是针对生产环境中缺少依赖而导致的部署问题提出的解决方案.容器能够显著改善devops和生产 ...
- 「暑期训练」「Brute Force」 Far Relative’s Problem (CFR343D2B)
题意 之后补 分析 我哭了,强行增加自己的思考复杂度...明明一道尬写的题- -(往区间贪心方向想了 其实完全没必要,注意到只有366天,直接穷举判断即可. 代码 #include <bits/ ...
- Qt Qwdget 汽车仪表知识点拆解7 图像绘制,旋转
先贴上效果图,注意,没有写逻辑,都是乱动的 看下最中心的指针旋转,这里使用的QPainter的绘制函数 要显示复杂的效果,需要分层 void Widget::draw_number_pointer() ...
- MySQL☞dual虚拟表
Dual表:虚拟表,专门用来测试各种函数:(本来以为跟Oracle中的dual表一样,发现还是不太一样)