1. 程式人生 > >Mysql group replication

Mysql group replication

(每臺)安裝元件:
注意:在單個主機上執行的多例項。需要在my.cnf中增加此選項
放在每個選項[mysqld3306]的下面 :report_host=127.0.0.1
並且:skip-name-resolve
mysql > INSTALL PLUGIN group_replication SONAME ‘group_replication.so’;
然後重啟資料庫
/etc/init.d/mysqld restart
或者
mysqld_multi restart

在第一臺資料庫上執行:
mysql > SET GLOBAL group_replication_bootstrap_group=ON;
表示:用於引導組複製的完成

在每臺數據庫伺服器上面執行:
mysql > grant replication slave,replication client on . to ‘rep1’@’%’ identified by ‘rep1’;
mysql > flush privileges;

在第一臺資料庫伺服器上執行:
mysql > change master to master_user=‘rep1’,master_password=‘rep1’ for channel ‘group_replication_recovery’;
設定白名單
mysql > set global group_replication_ip_whitelist = ‘127.0.0.1/32,10.6.248.197,10.6.248.198,10.6.248.196’;
(每臺伺服器上面)多主情況下要禁用單主模式,預設是啟用的:
mysql > set global group_replication_single_primary_mode = false;
開始啟動組複製:
mysql > start group_replication;
檢視是否已經成功了!
mysql > SELECT * FROM performance_schema.replication_group_members;
mysql > SET GLOBAL group_replication_bootstrap_group = OFF;
開啟查詢日誌:
MYSQL > SET GLOBAL GENERAL_LOG=ON

另外資料庫伺服器上面的執行:
mysql > change master to master_user=‘rep1’, master_password=‘rep1’ for channel ‘group_replication_recovery’;

設定白名單;
mysql > set global group_replication_ip_whitelist = ‘127.0.0.1/32,10.6.248.196,10.6.248.197,10.6.248.198’;
mysql>set global group_replication_allow_local_disjoint_gtids_join=ON;
mysql>START GROUP_REPLICATION;
mysql>set global read_only=0; --此步省略,因為有問題用到這步,但是這步並不是解決問題的方式!
MYSQL > SET GLOBAL GENERAL_LOG=ON

SELECT @@group_replication_local_address;用於檢視當前系統的組複製的對應網路