使用 MySQL MGR(MySQL Group Replication)可實現(xiàn) MySQL 數(shù)據(jù)庫的高可用性和故障轉(zhuǎn)移處理。在 MGR 中,節(jié)點的添加對于整個系統(tǒng)來說至關(guān)重要。下面我們將介紹如何將節(jié)點添加到 MGR。
1. 首先,您需要切換到將要添加節(jié)點的 MySQL 的命令行模式。例如,如果您希望將節(jié)點添加到名為“mydb”的數(shù)據(jù)庫,則可以通過以下命令進入 MySQL 命令行。 mysql -u 用戶名 -p mydb 2. 進入命令行后,您需要安裝系統(tǒng)變量,確定角色類型。例如,如果您將節(jié)點添加為讀取節(jié)點,則可以使用以下命令。 set global group_replication_local_address="IP:PORT"; set global group_replication_group_seeds="[IP1:PORT1,IP2:PORT2]"; set global group_replication_bootstrap_group=off; 3. 執(zhí)行命令后,您需要使用以下語法啟動組復(fù)制。 start group_replication; 4. 接下來是添加 MySQL 節(jié)點,您可以使用以下兩種方法進行添加。 - 首先,您可以使用 ALTER SERVER 語句來向群組添加節(jié)點。 例如: ALTER SERVER INDEX FOR SERVER_GROUP(group_replication_group_name) ADD INSTANCE 'MySQL_Replica_2' HOSTNAME 'mydb2.example.com' PORT 3306 USER 'username' PASSWORD 'password' ; - 其次,您可以使用 MySQL 命令行工具來執(zhí)行 SQL 語句。例如: shell>mysqlsh -u 用戶名 -p -h mydb2.example.com -P 3306 MySQL JS>var cluster = dba.getCluster() MySQL JS>cluster.addInstance({user:'username', password:'password', Hostname:'mydb2.example.com}); 5. 當(dāng)您成功添加節(jié)點后,您需要使用以下語法檢查群組的狀態(tài)。 show global status like 'group%'; 6. 最后,您可以從日志中檢查是否成功添加節(jié)點。 cat /var/lib/mysql/mdr.log
通過以上步驟,您可以輕松將新的 MySQL 節(jié)點添加到 MGR 中。這將大大提高您的數(shù)據(jù)庫的可用性和故障轉(zhuǎn)移處理能力。