mysql8.4 单主模式配置MGR

1、组架构图

%title插图%num

这里使用系统centos7,然后使用宝塔快速安装mysql8.4。

2、配置网络环境

对三台服务器进行操作,打开hosts文件,配置hosts。

vim /etc/hosts

添加以下内容。注意:IP和域名完全可以自定义

10.110.80.50 s1
10.110.80.51 s2
10.110.80.52 s3

使用防火墙,打开端口3306、33061、33060。其中33060是在33061无法使用的时候自动切换的备用端口。

3、配置主节点mysql配置文件

使用宝塔安装的mysql8.4,配置文件位置:/etc/my.cnf。其他安装方式请自查。注意:以下配置需要放在[mysqld] 标签之下。

# 禁用存储引擎,注意启用MGR必须使用InnoDb存储引擎。
disabled_storage_engines="MyISAM,BLACKHOLE,FEDERATED,ARCHIVE,MEMORY"
# 复制框架配置
# 将服务器设置为唯一ID 1
server_id=1
gtid_mode=ON
enforce_gtid_consistency=ON
# 组复制设置
plugin_load_add='group_replication.so'
group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
group_replication_start_on_boot=off
group_replication_local_address= "s1:33061"
group_replication_group_seeds= "s1:33061,s2:33061,s3:33061"
group_replication_bootstrap_group=off

注意查看该配置binlog_format。如果他的值不是binlog_format=ROW。请将其修改为binlog_format=ROW。不然会引发报错。

4、配置主节点MGR用户

主节点S1,进入mysql的命令行执行以下语句创建用户。

SET SQL_LOG_BIN=0;

CREATE USER 自定义的用户名@'%' IDENTIFIED BY '自定义的密码';
GRANT REPLICATION SLAVE ON *.* TO 自定义用户名@'%';
GRANT CONNECTION_ADMIN ON *.* TO 自定义用户名@'%';
GRANT BACKUP_ADMIN ON *.* TO 自定义用户名@'%';
GRANT GROUP_REPLICATION_STREAM ON *.* TO 自定义用户名@'%';
FLUSH PRIVILEGES;
SET SQL_LOG_BIN=1;

CHANGE REPLICATION SOURCE TO SOURCE_USER='自定义的用户名', 
SOURCE_PASSWORD='自定义的密码'
FOR CHANNEL 'group_replication_recovery';

注意:记得这里的用户名和密码,后面可能还会用到。

5、主节点启动MGR

在mysql命令行中运行指令:

INSTALL PLUGIN group_replication SONAME 'group_replication.so';

然后检查是否启动成功,运行指令:SHOW PLUGINS;如果成功会显示类似如下结果:

%title插图%num

6、主节点引导MGR

在mysql命令行中执行如下语句:

SET GLOBAL group_replication_bootstrap_group=ON;
START GROUP_REPLICATION;
SET GLOBAL group_replication_bootstrap_group=OFF;

然后运行SELECT * FROM performance_schema.replication_group_members;来查看结果,如果正常则会返回如下结果:

%title插图%num

7、子节点配置文件,只提供S2示例,S3可以类比。

要添加第二个实例,服务器 s2,首先创建 它的配置文件。配置类似于 一个用于服务器 S1,但 server_id 之类的东西除外。

[mysqld]

#
# Disable other storage engines
#
disabled_storage_engines="MyISAM,BLACKHOLE,FEDERATED,ARCHIVE,MEMORY"

#
# Replication configuration parameters
#
server_id=2
gtid_mode=ON
enforce_gtid_consistency=ON

#
# Group Replication configuration
#
plugin_load_add='group_replication.so'
group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
group_replication_start_on_boot=off
group_replication_local_address= "s2:33061"
group_replication_group_seeds= "s1:33061,s2:33061,s3:33061"
group_replication_bootstrap_group= off

然后创建用户:

SET SQL_LOG_BIN=0;
CREATE USER 自定义用户名@'%' IDENTIFIED BY '自定义密码';
GRANT REPLICATION SLAVE ON *.* TO 自定义用户名@'%';
GRANT CONNECTION_ADMIN ON *.* TO 自定义用户名@'%';
GRANT BACKUP_ADMIN ON *.* TO 自定义用户名@'%';
GRANT GROUP_REPLICATION_STREAM ON *.* TO 自定义用户名@'%';
FLUSH PRIVILEGES;
SET SQL_LOG_BIN=1;

CHANGE REPLICATION SOURCE TO SOURCE_USER='自定义用户名', 
SOURCE_PASSWORD='自定义密码'
FOR CHANNEL 'group_replication_recovery';

然后启动MGR,执行sql指令:

START GROUP_REPLICATION;

或:

START GROUP_REPLICATION USER='自定义用户名', PASSWORD='自定义密码';

然后运行sql指令:SELECT * FROM performance_schema.replication_group_members;来查看结果,如果成功返回结果如下图:

%title插图%num

至此第二个节点S2添加完毕,可以参考S2的步骤添加上S3节点。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇