千家信息网

Mysql组复制集群的Primay Server如何配置并启动

发表于:2024-12-05 作者:千家信息网编辑
千家信息网最后更新 2024年12月05日,本文主要给大家简单讲讲Mysql组复制集群的Primay Server如何配置并启动,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望Mysql组复制集群
千家信息网最后更新 2024年12月05日Mysql组复制集群的Primay Server如何配置并启动

本文主要给大家简单讲讲Mysql组复制集群的Primay Server如何配置并启动,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望Mysql组复制集群的Primay Server如何配置并启动这篇文章可以给大家带来一些实际帮助。

一,在配置文件中添加组复制

server_id=1

#GTID模式打开。Global Transaction Identifier 全局事物标识

#一个GTID在一个云服务器上只执行一次,避免重复执行导致数据混乱或者主从不一致

gtid_mode=ON

enforce_gtid_consistency=ON


#这两个参数会将master.info和relay.info保存在表中

#master.info, relay.info为进行数据复制过程中产生信息

master_info_repository=TABLE

relay_log_info_repository=TABLE


#数据同步复制时候使用binlog二进制日志技术。binlog的相关配置

binlog_checksum=NONE

log_slave_updates=ON

log_bin=binlog

binlog_format=ROW


#以下内容为配组置复制

transaction_write_set_extraction=XXHASH64

#roup_name 的格式是UUID,可以在MySQL 中执行 select uuid(); 来获得一个

loose-group_replication_group_name=056dc8f1-3007-11e7-bcbe-f079598d6322


#启动的时候不自动启动组复制

loose-group_replication_start_on_boot=off

#本server所使用的与其他组员通信复制的端口

#如果每个server实例运行在不同的机器上,那么本地址端口官方建议为33061

loose-group_replication_local_address="127.0.0.1:33061"


#种子成员列表,就是server在加入组的时候,可以联络的其他组员。

#此选项不需要列出所有的组成员。需要加入组的server,只需要询问组中的一个成员即可加入组

#不支持在创建组的时候,同时加入多个成员,会引起竞争

#Warining, 组中首先启动的server,它是不使用这个选项的

loose-group_replication_group_seeds="127.0.0.1:33061,127.0.0.1:33071,127.0.0.1:33081"


#此选项ON在任何时候只能在一个server实例上使用。如果多个为ON,造成脑裂

#此选项,在group的启动server,构建启动组的时候,手动置为ON

#server启动后,通过命令行SET loose-group_replication_bootstrap_group=ON

loose-group_replication_bootstrap_group=off


二。启动首要Server并创建组

组复制机制,使用异步复制协议在分布式的集群实例中进行数据复制的。分布式恢复进程,依赖于名为"group_replication_recovery"的通道,而它正是用来在组成员当中传输事物。在此,需要配置正确的用户,基于组复制机制来建立组成员之间的直接复制通道。

  • 因此,先创建一个具有replication_slave权限的用户

在初始sever里面,执行以下的命令构建用户并授权使用恢复通道

-- 设置以下操作不记录日志

set sql_log_bin=0;

create user rpl_user@'%';

grant replication slave on *.* to rpl_user@'%' identified by 'Abcd1234';

flush privileges;

set sql_log_bin=1;


--下面这一句可能过长,分开两行输入(第一行结束的时候,不要带;)

--使用change master to配置本server如果从其他组成员恢复数据时候,使用group_replication_recovery通道给定的凭证。

change master to master_user='rpl_user', master_password='Abcd1234'

for channel 'group_replication_recovery';

#用以下语句可以检查

select * from mysql.slave_master_info \G;

  • 安装组复制插件

LINUX下面使用

install plugin group_replication soname 'group_replication.so';

windows下使用

install plugin group_replication soname 'group_replication.dll';

可以通过show plugins 命令检查是否安装成功

  • 启动复制组

整个复制组只需要启动一次

set global group_replication_bootstrap_group=ON;

start group_replication;

set global group_replication_bootstrap_group=OFF;

启动成功后,可以通过以下语句检查是否第一个member加入了组中

select * from performance_schema.replication_group_members;

Mysql组复制集群的Primay Server如何配置并启动就先给大家讲到这里,对于其它相关问题大家想要了解的可以持续关注我们的行业资讯。我们的板块内容每天都会捕捉一些行业新闻及专业知识分享给大家的。

0