MYSQL数据库的组复制

数据库组复制的原理:
组复制是一种可用于实现容错系统的技术。复制组是一个通过消息传递相互交互的服务器组。通信层提供了很多保证,例如原子消息和总消息序号的传递。通过这些强大的特性,我们可以构建更高级的数据库复制解决方案。

[1]. 配置
server1、server2、server3停掉之前的服务,清空数据库目录中的记录(/var/lib/mysqld)

[2]. 配置三个节点的配置文件/etc/my.cnf

server_id=1    ##三个节点各不相同

gtid_mode=ON   ##打开gtid
enforce_gtid_consistency=ON
master_info_repository=TABLE
relay_log_info_repository=TABLE
binlog_checksum=NONE
log_slave_updates=ON
log_bin=binlog
binlog_format=ROW


transaction_write_set_extraction=XXHASH64
loose-group_replication_group_name="b8b8d7dd-9312-4539-971c-b013f49d6e51"    ##server的uuid
loose-group_replication_start_on_boot=off
loose-group_replication_local_address= "172.25.254.1:24901"
loose-group_replication_group_seeds= "172.25.254.1:24901,172.25.254.2:24901,172.25.254.3:24901"
loose-group_replication_bootstrap_group=off
loose-group_replication_ip_whitelist="172.25.254.0/24"
loose-group_replication_enforce_update_everywhere_checks=on
loose-group_replication_single_primary_mode=off

[3].在server1中设定数据库的初始密码配置组复制:

(1)不开启日志同步
SET SQL_LOG_BIN=0; #
(2)向rpl_user用户授予所有权限,所有用户均可利用rpl_user用户同步
GRANT REPLICATION SLAVE ON . TO rpl_user@’%’ IDENTIFIED BY ‘Hellojay123+’;
(3)刷新授权表
FLUSH PRIVILEGES;
(4)reset master;
(5)开启日志记录
SET SQL_LOG_BIN=1;
(6)CHANGE MASTER TO MASTER_USER=’rpl_user’,MASTER_PASSWORD=’Hellojay123+’ FOR CHANNEL ‘group_replication_recovery’;
(7)INSTALL PLUGIN group_replication SONAME ‘group_replication.so’;
(8)SHOW PLUGINS;
(9)SET GLOBAL group_replication_bootstrap_group=ON;
(10)START GROUP_REPLICATION;
(11)SET GLOBAL group_replication_bootstrap_group=OFF;
(12)SELECT * FROM performance_schema.replication_group_members;
server1配置完成后处于online状态: 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值