虚拟机准备:3台(vmware14虚拟机管理,centos7.x系统)
192.168.56.177 node1
192.168.56.188 node2
192.168.56.199 node3
集群互信设置
ssh-keygen -t rsa
ssh-copy-id -i ./id_rsa.pub root@node1
ssh-copy-id -i ./id_rsa.pub root@node2
ssh-copy-id -i ./id_rsa.pub root@node3
mysql5.7.x下载
下载链接 https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz
mysql5.7安装步骤
将下载成功的mysql安装包上传至目录/usr/local/soft/
1.解压在当前目录
tar -zxvf mysql-5.7.34-linux-glibc2.12-x86_64.tar
2.更改名称并将文件剪切至/usr/local/
mv mysql-5.7.34-linux-glibc2.12-x86_64 mysql
mv mysql /usr/local/
3.新增my.cnf配置文件
cd /usr/local/mysql/support-files
vim my_default.cnf
添加如下内容:
[mysqld]
basedir =/usr/local/mysql
#设置mysql数据库的数据存放目录
datadir = /usr/local/mysql/data
#设置端口
port = 3306
socket = /tmp/mysql.sock
#设置字符集
character-set-server=utf8
#日志存放目录
log-error = /usr/local/mysql/data/mysqld.log
pid-file = /usr/local/mysql/data/mysqld.pid
4.将配置文件copy到etc目录下
cp my_default.cnf /etc/my.cnf
5.初始化mysql配置信息
进入 cd /usr/local/mysql
执行 ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
6.执行成功后查看默认密码
cat /usr/local/mysql/data/mysqld.log 默认密码在最后一行
7.登录mysql修改默认密码并开放远程登录
cd /usr/local/mysql/bin --进入mysql 运行目录
./mysql -u root -p 123456 --此处的密码是来自于mysqld.log中最后一行的默认密码
设置密码:
set password=password('123456');
grant all privileges on *.* to root@'%' identified by '123456';
flush privileges;
用navicat或者其他客户端连接验证一下即可,访问不了的话,可能是防火墙没有开放3006 的原因。
准备mgr所需的配置信息
server_id=1
gtid_mode=ON
enforce_gtid_consistency=ON
binlog_checksum=NONE
log_bin=binlog
log_slave_updates=ON
binlog_format=ROW
master_info_repository=TABLE
relay_log_info_repository=TABLE
transaction_write_set_extraction=XXHASH64
loose-group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
loose-group_replication_start_on_boot=OFF
loose-group_replication_local_address= "192.168.56.177:33061"
loose-group_replication_group_seeds= "192.168.56.177:33061,192.168.56.188:33061,192.168.56.199:33061"
loose-group_replication_bootstrap_group=OFF
report_host=192.168.56.177
report_port=3306
注意:将上述信息加入到node1,node2,node3节点中 /etc/my.cnf 中, service_id,group_replication_local_address,report_host 三个配置需要根据实际配置变动,其他的不需要修改,配置完成后记得重启服务,重启服务 service mysql restart
配置mgr插件及复制用户(三个节点都执行如下内容)
1.登录到mysql控制台
cd /usr/local/mysql/bin
./mysql -u root -p 123456
2.登录成功后执行如下:
set SQL_LOG_BIN=0; #停止日志记录
grant replication slave on *.* to repl@'%' identified by '123456';
flush privileges;
set SQL_LOG_BIN=1; #开启日志记录
change master to master_user='repl',master_password='123456' for channel 'group_replication_recovery'; #构建group replication集群
install PLUGIN group_replication SONAME 'group_replication.so'; #安装group replication插件
set global group_replication_bootstrap_group=on; #开启标示以后加入集群的服务器以这台服务器为基准,以后加入的就不需要设置。
start group_replication;
set global group_replication_bootstrap_group=off;
select * from performance_schema.replication_group_members; #-- 查询表
show variables like 'group_replication%';
3. 完成后重启各个节点mysql 服务,进入mysql控制台,并启动mgr配置
主节点(node1):执行
set global group_replication_bootstrap_group=on;
start group_replication;
set global group_replication_bootstrap_group=off;
从节点(node2):执行
start group_replication;
从节点(node3):执行
start group_replication;
到此mysql5.7mgr集成配置完成,亲测有效。
注意:本文归作者所有,未经作者允许,不得转载