实验环境 :
server2:172.25.16.2
server6:172.25.16.10
server7:172.25.16.20
在三台主机上面配置
1.如果前面有mysql作其他的项目,在/data/mysql 把目录中的文件删除,初始化mysql mysqld --initialize --user=mysql
,记住初始化密码
2.修改/etc/my.cnf
[mysqld]
basedir=/usr/local/lnmp/mysql
datadir=/data/mysql
socket=/data/mysql/mysql.sock
#skip-grant-tables
disabled_storage_engines="MyISAM,BLACKHOLE,FEDERATED,ARCHIVE,MEMORY"
server-id=1
gtid_mode=ON
enforce-gtid-consistency=ON
default_authentication_plugin=mysql_native_password
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="172.25.16.2:33061" ##修改到当前数据库主机的ip
group_replication_group_seeds="172.25.16.2:33061,172.25.16.10:33061,172.25.16.20:33061"
group_replication_bootstrap_group=off
group_replication_ip_whitelist="172.25.16.2/24,127.0.0.1/8"
group_replication_single_primary_mode=OFF
group_replication_enforce_update_everywhere_checks=ON
3.开启mysql服务
/etc/init.d/mysqld start
4.进入数据库,并修改
mysql> SET SQL_LOG_BIN=0;
Query OK, 0 rows affected (0.01 sec)
mysql> alter user root@localhost identified by 'westos';
Query OK, 0 rows affected (0.01 sec)
mysql> CREATE USER rpl_user@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)
mysql> GRANT REPLICATION SLAVE ON *.* TO rpl_user@'%';
Query OK, 0 rows affected (0.01 sec)
mysql> GRANT BACKUP_ADMIN ON *.* TO rpl_user@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> SET SQL_LOG_BIN=1;
Query OK, 0 rows affected (0.00 sec)
mysql> CHANGE MASTER TO MASTER_USER='rpl_user', MASTER_PASSWORD='password' FOR CHANNEL 'group_replication_recovery';
Query OK, 0 rows affected, 2 warnings (0.03 sec)
mysql> SET GLOBAL group_replication_bootstrap_group=ON; //只在第一个节点设置
Query OK, 0 rows affected (0.00 sec)
mysql> START GROUP_REPLICATION;
Query OK, 0 rows affected (2.15 sec)
mysql> SET GLOBAL group_replication_bootstrap_group=OFF; //只在第一个节点设置
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT * FROM performance_schema.replication_group_members;
+---------------------------+--------------------------------------+-------------+-------------+--------------+-------------+----------------+
| CHANNEL_NAME | MEMBER_ID | MEMBER_HOST | MEMBER_PORT | MEMBER_STATE | MEMBER_ROLE | MEMBER_VERSION |
+---------------------------+--------------------------------------+-------------+-------------+--------------+-------------+----------------+
| group_replication_applier | 66e6750f-e1be-11ea-bc98-5254006d5586 | server1 | 3306 | ONLINE | PRIMARY | 8.0.21 |
+---------------------------+--------------------------------------+-------------+-------------+--------------+-------------+----------------+
1 row in set (0.00 sec)
5.3台全部部署之后的效果
三台数据库都有这个t1表