文件首頁
MySQL Shell 8.4
下載本手冊
PDF (美式信紙) - 2.2Mb
PDF (A4) - 2.3Mb


MySQL Shell 8.4  /  ...  /  採用群組複寫部署

7.4.7 採用群組複寫部署

如果您有現有的群組複寫部署,並且想要使用它來建立叢集,請將 adoptFromGR 選項傳遞至 dba.createCluster() 函數。建立的 InnoDB Cluster 會符合複寫群組是以單一主要或多個主要身分執行。

若要採用現有的群組複寫群組,請使用 MySQL Shell 連線至群組成員。在以下範例中,採用單一主要群組。我們連線至 gr-member-2,這是一個次要執行個體,而 gr-member-1 則作為群組的主要執行個體。使用 dba.createCluster() 建立叢集,並傳入 adoptFromGR 選項。例如

mysql-js> var cluster = dba.createCluster('prodCluster', {adoptFromGR: true});

A new InnoDB cluster will be created on instance 'root@gr-member-2:3306'.

Creating InnoDB cluster 'prodCluster' on 'root@gr-member-2:3306'...
Adding Seed Instance...

Cluster successfully created. Use cluster.addInstance() to add MySQL instances.
At least 3 instances are needed for the cluster to be able to withstand up to
one server failure.
提示

如果執行個體的 super_read_only=ON,您可能需要確認 AdminAPI 可以設定 super_read_only=OFF。請參閱 超級唯讀模式中的執行個體組態,以取得更多資訊。

如果您未指定 adoptFromGR: true,且目標伺服器執行個體屬於複寫群組,MySQL Shell 會提示您確認是否要採用複寫群組。如果您指定 adoptFromGR: false,則如果發現執行個體屬於複寫群組,則會停止作業,且不會出現提示。

新的叢集會符合群組的模式。如果採用的群組是以單一主要模式執行,則會建立單一主要叢集。如果採用的群組是以多個主要模式執行,則會建立多個主要叢集。

注意

無法在與 adoptFromGR 相同的命令中定義叢集使用的通訊堆疊,叢集最初必須使用採用群組使用的通訊堆疊。如有必要,您可以在採用群組後,使用 rebootClusterFromCompleteOutage 來變更通訊堆疊。請參閱 第 7.5.9 節「設定群組複寫通訊堆疊」