使用docker 配置mysql group replication实验环境

1.  使用单主机模式 进行测试.

用到的配置和脚本如下:

node1 - my.cnf

[mysqld]
user=mysql
server_id=1
gtid_mode=ON
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="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
loose-group_replication_start_on_boot=off
loose-group_replication_local_address= "node1:33060"
loose-group_replication_group_seeds= "node1:33060,node2:33060,node3:33060"
loose-group_replication_bootstrap_group=off
loose-group_replication_recovery_user=repl
loose-group-replication-single-primary-mode='ON'
loose-group-replication-enforce-update-everywhere-checks='OFF'

relay-log=replay-bin

node2-my.cnf

[mysqld]
user=mysql
server_id=2
gtid_mode=ON
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="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
loose-group_replication_start_on_boot=off
loose-group_replication_local_address= "node2:33060"
loose-group_replication_group_seeds= "node1:33060,node2:33060,node3:33060"
loose-group_replication_bootstrap_group=off
loose-group_replication_recovery_user=repl
loose-group-replication-single-primary-mode='ON'
loose-group-replication-enforce-update-everywhere-checks='OFF'

relay-log=replay-bin

 node3-my.cnf

[mysqld]
user=mysql
server_id=3
gtid_mode=ON
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="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
loose-group_replication_start_on_boot=off
loose-group_replication_local_address= "node3:33060"
loose-group_replication_group_seeds= "node1:33060,node2:33060,node3:33060"
loose-group_replication_bootstrap_group=off
loose-group-replication-single-primary-mode=on
loose-group-replication-enforce-update-everywhere-checks=off

relay-log=replay-bin

[mysqld_safe]

 docker启动脚本:run.sh

#!/bin/bash

if [ "$1" = "" ] || [ "$1" = '3306' ];then
  echo -p 'examples: ./run.sh 33060; port must not a number and not equal with 3306!'
fi


#you can update this test dir for another dir
base_dir=/home/mysql_test/mysql_5.7/

if [ ! -d $base_dir ];then
    echo "$base_dir not exist, please update base_dir in the shell!"
    exit
fi

cd $base_dir
nodeDir=node$1


if [ ! -d $nodeDir ];then
   mkdir $nodeDir
#else
   #echo "$1 has exist, please input another port number!"
fi

base_dir=${base_dir}$nodeDir
conf_dir_name=conf
data_dir_name=data
conf_dir=${base_dir}/$conf_dir_name
data_dir=${base_dir}/$data_dir_name
port=3306$1:3306
container=mysql/mysql-server:5.7

cd $base_dir
if [ ! -d $conf_dir_name ];then
    mkdir $conf_dir_name
fi

cd $conf_dir_name
if [ ! -f
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值