1.修改配置文件,主要修改server_id和local_address
vim /etc/mysql/my.cnf
[mysqld]#mysql自身配置,这里默认即可pid-file = /var/run/mysqld/mysqld.pidsocket = /var/run/mysqld/mysqld.sockdatadir = /var/lib/mysqllog-error = /var/log/mysql/error.logbind-address = 0.0.0.0server_id = 1 #2,3 要每台不一样gtid_mode = ON #开启gitd复制log_bin = biloglog_slave_updates = ONmaster_info_repository = TABLErelay_log_info_repository = TABLEtransaction_write_set_extraction = XXHASH64enforce_gtid_consistency = ONslave_preserve_commit_order = ON #确保GR_applier按照一致的顺序复现事务binlog_checksum = NONEloose-group_replication_group_name = a38e32fd-5fb6-11e8-ad7a-00259015d941 #UUID号,集群中要一致loose-group_replication_start_on_boot = OFF #默认关闭, 防止重启后自动创建新的Grouploose-group_replication_bootstrap_group = OFF #默认关闭, 防止自动创建新的Grouploose-group_replication_allow_local_disjoint_gtids_join = ONloose-group_replication_single_primary_mode = OFF ##在单主模式中为ON,在多主模式中为OFFloose-group_replication_enforce_update_everywhere_checks = ON重启
systemctl restart mysql
2.检查配置,进入mysql-js shell,user是刚才配置的账号,登陆后可以按y保存密码,以后登陆js不需要密码
过一会返回一个”status”: “ok”则是集群配置正确了
mysql-js> dba.configureLocalInstance('root@localhost:3306');
如果返回error就往上翻,会有提示配置错误的部分

1.为之前创建的集群用户,添加权限
change master to master_user='root',master_password='password' for channel 'group_replication_recovery';
2.安装group_replication
INSTALL PLUGIN group_replication SONAME 'group_replication.so';
1.第一台机器操作
set global group_replication_bootstrap_group=on;
start group_replication;
set global group_replication_bootstrap_group=off;
如果上述命令报错3098,在多主模式下登陆数据库做如下操作:
进入数据库,查询集群库的表名
use mysql_innodb_cluster_metadata
show databases;
查询创建表语句,找到CONSTRAINT开头的部分,每个表都要找
show create table 表名\G;
CONSTRAINT `外键名` FOREIGN KEY (`xxxx`) REFERENCES `xxxxxx` (`id`)删除外键,多主模式集群不支持外键,删除每个有外键的表
alter table 表名 drop foreign key 外键名;
再操作一遍如下即可
set global group_replication_bootstrap_group=on;
start group_replication;
`set global group_replication_bootstrap_group=off;
2.其它节点机器操作
start group_replication;
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。