MySQL组复制(经理)安装

  

MySQL组复制安装

  

192.168.10.65
192.168.10.66
192.168.10.67

  

操作系统:CentOS 7.4
mysql软:8.0.12

  

一、安装MySQL,并创建实例
此处参考mysql8.0.12源码安装

  

二,下几个指定参数,添加到配置文件中,重启生效
——配置文件

gtid_mode binlog_format=行=
enforce_gtid_consistency=

master_info_repository log_slave_updates==表
relay_log_info_repository=表
binlog_checksum=没有

  

transaction_write_set_extraction=XXHASH64 # # #开启主键信息采集功能,8.0.2开始默认值为XXHASH64
loose-group_replication_group_name=癮aaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"# # #设置组名,随便起,但是不能与UUID重复
loose-group_replication_start_on_boot=了# # #为了避免每次启动自动引导具有相同名称的第二个组,所以设置为。
loose-group_replication_bootstrap_group=了# # #同上
loose-group_replication_local_address=?92.168.10.65:24901"# # #设置成员的本地地址,不同节点此处要修改为相应的IP地址
loose-group_replication_group_seeds=?92.168.10.65:24901, 192.168.10.66:24902, 192.168.10.67:24903"# # #设置种子成员的地址
loose-group_replication_single_primary_mode=FALSE # # #搭建多主模式
loose-group_replication_enforce_update_everywhere_checks=在# # #避免未检测到的外键冲突

  

——设置白名单,选做
全球宽松group_replication_ip_whitelist=?92.168.10.65,192.168.10.66,192.168.10.67";
全球宽松group_replication_ip_whitelist=?27.0.0.1/32 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,192.168.1.0/24";

  

三、操作第一个节点
——安装插件
mysql>安装插件group_replication SONAME group_replication.so,

  

——创建用户,要注意不能记录到binlog文件中
mysql>设置SQL_LOG_BIN=0;# # #创建授权用户不写入bin_log
mysql>192.168创建用户”repl“@”。%’被repl的;
mysql>格兰特在复制的奴隶。“repl”@“192.168. %”;
mysql>冲洗特权;
mysql>

设置SQL_LOG_BIN=1;   

——这句只有第一个节点,在第一次执行引导组的时候执行。重启也需要。启动group_replication后关闭。
mysql>设定全球group_replication_bootstrap_group=;
mysql>修改主MASTER_USER=repl, MASTER_PASSWORD=皉epl”频道“group_replication_recovery”;
——启动
mysql>开始GROUP_REPLICATION;
mysql>集全球group_replication_bootstrap_group=;

  

——查看当前下成员,判断第一个节点是否成功,member_state状态必须是在线
mysql>SELECT * FROM performance_schema.replication_group_members;

  

四、操作第二,第三节点
——安装插件
mysql>安装插件group_replication SONAME group_replication.so,

  

——创建用户,要注意不能记录到binlog文件中
mysql>设置SQL_LOG_BIN=0;# # #创建授权用户不写入bin_log
mysql>192.168创建用户”repl“@”。%’被repl的;
mysql>格兰特在复制的奴隶。“repl”@“192.168. %”;
mysql>冲洗特权;
mysql>

设置SQL_LOG_BIN=1;   

mysql>修改主MASTER_USER=repl, MASTER_PASSWORD=皉epl”频道“group_replication_recovery”;
——启动
mysql>开始GROUP_REPLICATION;

  

常见错误:
一、无法连接端口
2018 - 09 - 18 t16:31:04.579403 +喂饲0(错误)[我- 011735][Repl]插件group_replication报道:“(GCS)无法宣布tcp端口3306。端口已经在使用?
2018 - 09 - 18 t16:31:04.579607 +喂饲0(错误)[我- 011735][Repl]插件group_replication报道:“(GCS)误差加入该集团在等待网络层成为准备好。”
2018 - 09 - 18 t16:31:04.579741 +喂饲0(错误)[我- 011735][Repl]插件group_replication报道:“(GCS)成员无法加入该组织。本地端口:3306“
2018 - 09 - 18 t16:32:04.532459 +喂饲8[错误][我- 011640][Repl]插件group_replication报道:“加入小组后超时等待视图上的
2018 - 09 - 18 t16:32:04.532736 +喂饲8[错误][我- 011735][Repl]插件group_replication报道:“(GCS)成员留下一群没有。”

  

原因:
loose-group_replication_local_address=?92.168.10.65:3306"
loose-group_replication_group_seeds=?92.168.10.65:3306, 192.168.10.66:3306, 192.168.10.67:3306"
参数设置有问题,IP后面不是港口,按照官网的例子,24901,24902,24903顺序填写即可

  

解决办法:
loose-group_replication_local_address=?92.168.10.65:24901"
loose-group_replication_group_seeds=?92.168.10.65:24901, 192.168.10.66:24902, 192.168.10.67:24903"

  null   null   null

MySQL组复制(经理)安装