文章目录
  
  1、安装mysql
  
  2、修改配置文件:
  
  3、安装group_replicatin插件,启动group_replication
  
  4、添加节点node-02 node-03:
  
  有关复制组的相关原理介绍:http://note.youdao.com/noteshare?id=9eb41d6de1af00e41314297282a43bc1
  
  环境:
  
  ip hostname
  
  192…168.8.80 node-01
  
  192…168.8.81 node-02
  
  192…168.8.83 node-03
  
  1、安装mysql
  
  [root@mysql]# yum install http://www.percona.com/downloads/percona-release/redhat/0.1-6/percona-release-0.1-6.noarch.rpm
  
  [root@mysql]# yum -y install Percona-Server-server-57
  
  [root@mysql]# cat /var/log/mysqld.log |grep "root@localhost"
  
  2018-11-02T05:41:32.373113Z 1 [Note] A temporary password is generated for root@localhost: m-3SAGso6w43
  
  [root@mysql]# mysql -uroot -pm-3SAGso6w43
  
  mysql> show variables like '%vali%';
  
  mysql> set global validate_password_length=4;
  
  mysql> alter user 'root'@'localhost' identified by 'root123';
  
  2、修改配置文件:
  
  my.cnf配置文件里修改参数: server-id、loose-group_replication_local_address
  
  [mysqld]
  
  pid-file=/var/run/mysqld/mysqld.pid
  
  log-error=/var/log/mysqld.log
  
  datadir=/var/lib/mysql
  
  socket=/var/lib/mysql/mysql.sock
  
  # Disabling symbolic-links is recommended to prevent assorted security risks
  
  symbolic-links=0
  
  # Settings user and group are ignored when systemd is used.
  
  # If you need to run mysqld under a different user or group,
  
  # customize your systemd unit file for mariadb according to the
  
  # instructions in http://fedoraproject.org/wiki/Systemd
  
  server-id = 101
  
  log-bin = master-bin
  
  log-bin-index = master-bin.index
  
  binlog_format = row
  
  gtid-mode = ON
  
  enforce-gtid-consistency = ON
  
  log-bin=mysql-bin
  
  log-slave-updates
  
  master_info_repository=TABLE
  
  relay_log_info_repository=TABLE
  
  binlog_checksum=NONE
  
  ## group replication 配置
  
  #如果server启动时尚未加载复制插件,group_replicaton 变量使用loose-前缀将指示server继续启动。
  
  transaction_write_set_extraction=XXHASH64 #表示server必须为每个事物收集写集合,并使用XXHASH64 哈希算法将其编码为散列。
  
  loose_group_replication_start_on_boot=OFF
  
  loose-group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
  
  loose-group_replication_start_on_boot=off
  
  loose-group_replication_local_address="192..168.8.80:33061"
  
  loose-group_replication_group_seeds="192..168.8.80:33061,192..168.8.81:33061,192..168.8.83:33061"
  
  loose-group_replication_bootstrap_group= off
  
  loose-group_replication_single_primary_mode=FALSE
  
  loose-group_replication_enforce_update_everywhere_checks= TRUE
  
  loose-group_replication_ip_whitelist="192..168.8.80,192..168.8.81,192..168.8.83"
  
  [mysqld_safe]
  
  log-error=/var/log/mariadb/mariadb.log
  
  pid-file=/var/run/mariadb/mariadb.pid
  
  #
  
  # include all files from the config directory
  
  #
  
  !includedir /etc/my.cnf.d
  
  3、安装group_replicatin插件,启动group_replication
  
  [root@mysql]# mysql -uroot -proot123
  
  mysql> set sql_log_bin=0;
  
  mysql> grant replication slave on *.* to 'rep'@'%' identified by 'rep123';
  
  mysql> flush privileges;
  
  mysql> set sql_log_bin=1;
  
  mysql> change master to master_user=www.mcyllpt.com 'rep',master_password='rep123' for channel 'group_replication_recovery';
  
  mysql> install plugin group_replication soname 'group_replication.so';
  
  mysql> show plugins;
  
  +-----------------------------+----------+--------------------+----------------------+---------+
  
  | Name | Status | Type | Library | License |
  
  +-----------------------------+----------+--------------------+----------------------+---------+
  
  | group_replication | ACTIVE | GROUP REPLICATION | group_replication.so | GPL |
  
  +-----------------------------+----------+--------------------+----------------------+---------+
  
  mysql> set global group_replication_bootstrap_group=ON;
  
  mysql> start group_replication;
  
  mysql> set global group_replication_bootstrap_group=OFF;
  
  mysql> select * from performance_schema.replication_group_members;
  
  +---------------------------+--------------------------------------+---------------------+-------------+--------------+
  
  | CHANNEL_NAME | MEMBER_ID | MEMBER_HOST | MEMBER_PORT | MEMBER_STATE |
  
  +---------------------------+--------------------------------------+---------------------+-------------+--------------+
  
  | group_replication_applier | f38e5798-de61-11e8-91e6-fa163e180951 | node-01 | 3306 | ONLINE |
  
  +---------------------------+--------------------------------------+---------------------+-------------+--------------+
  
  4、添加节点node-02 node-03:
  
  安装mysql、my.cnf 同上
  
  安装group_replicatin插件,启动group_replication
  
  mysql> set sql_log_bin=0;
  
  mysql> grant replication slave on www.xgll521.com *yongshiyule178.com.* to 'rep'@'%' identified by 'rep123';
  
  mysql> flush privileges;
  
  mysql> set sql_log_bin=1;
  
  mysql> change master to master_user='rep',master_password='rep123' for channel 'group_replication_recovery';
  
  mysql> set global group_replication_allow_local_disjoint_www.michenggw.com gtids_join=ON;
  
  mysql> start group_replication;
  
  mysql> select * from performance_www.yigouyule2.cn schema.replication_group_members;
  
  +---------------------------+--------------------------------------+---------------------+-------------+--------------+
  
  | CHANNEL_NAME | MEMBER_ID | MEMBER_HOST | MEMBER_PORT | MEMBER_STATE |
  
  +---------------------------+--------------------------------------+---------------------+-------------+--------------+
  
  | group_replication_applier | 433cc62e-dd00-11e8-a653-fa163e4f3761 | node-03 | 3306 | ONLINE |
  
  | group_replication_applier | af4e8b5d-bc99-11e8-9ad1-fa163e230ff6 | node-02 | 3306 | ONLINE |
  
  | group_replication_applier | f38e5798-de61-11e8-91e6-fa163e180951 | node-01 | 3306 | ONLINE |
  
  +---------------------------+--------------------------------------+---------------------+-------------+-------------

最新文章

  1. AngularJS入门教程
  2. LVS原理与使用(1)
  3. JavaScript Prototype
  4. XML文档操作集锦(C#篇)
  5. JavaScript中的原型和对象机制
  6. el captain设置环境变量
  7. liunx下安装MYSQL时需要安装的相关软件的作用
  8. net中的编译
  9. iOS 进阶 第十二天(0413)
  10. ubuntu下搭建nfs,tftp,安装qt等一些基本的启动bootloader前的服务
  11. Struts2 Package
  12. 无法找到AdbWinApi.dll问题解决 .
  13. ionic 手机端如何嵌入视频iframe
  14. js接收后台时间数据变成秒处理为正常格式
  15. 自定义控件,上图下字的Button,图片任意指定大小
  16. 【记录】Xmind8 Pro 激活
  17. TS - 解决问题的一些方法
  18. 面试题(校招java)
  19. Java(控制台输出)实现猜数字小游戏
  20. PostThreadMessage

热门文章

  1. vertical-align垂直居中
  2. CentOS下配置jdk
  3. jenkins+maven+docker集成java发布(一)自动发布
  4. atlas+mysql部署mysql读写分离
  5. Linux编程之Epoll高并发
  6. SGU 495
  7. Django学习之天气调查实例(2):显示数据表数据
  8. 1977: [BeiJing2010组队]次小生成树 Tree
  9. C++语言入门知识点(详细版)【持续更新每周三更】,小舒舒戳这里!!!
  10. iOS中如何根据UIView获取所在的UIViewController