

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 管理主動-主動叢集
<a name="mysql-stored-proc-active-active-clusters"></a>

下列預存程序會設定和管理 RDS for MySQL 主動-主動叢集。如需詳細資訊，請參閱[為 RDS for MySQL 設定主動-主動叢集](mysql-active-active-clusters.md)。

這些預存程序僅適用於執行下列版本的 RDS for MySQL 資料庫執行個體：
+ 所有 MySQL 8.4 版
+ MySQL 8.0.35 和更高的次要版本

**Topics**
+ [mysql.rds\_group\_replication\_advance\_gtid](#mysql_rds_group_replication_advance_gtid)
+ [mysql.rds\_group\_replication\_create\_user](#mysql_rds_group_replication_create_user)
+ [mysql.rds\_group\_replication\_set\_recovery\_channel](#mysql_rds_group_replication_set_recovery_channel)
+ [mysql.rds\_group\_replication\_start](#mysql_rds_group_replication_start)
+ [mysql.rds\_group\_replication\_stop](#mysql_rds_group_replication_stop)

## mysql.rds\_group\_replication\_advance\_gtid
<a name="mysql_rds_group_replication_advance_gtid"></a>

在目前的資料庫執行個體上建立預留位置 GTID。

### 語法
<a name="mysql_rds_group_replication_advance_gtid-syntax"></a>

```
CALL mysql.rds_group_replication_advance_gtid(
{{begin_id}}
, {{end_id}}
, {{server_uuid}}
);
```

### Parameters
<a name="mysql_rds_group_replication_advance_gtid-parameters"></a>

 {{begin\_id}}   
要建立的開始交易 ID。

 {{end\_id}}   
要建立的結束交易 ID。

 {{begin\_id}}   
要建立之交易的 `group_replication_group_name`。在與資料庫執行個體相關聯的資料庫參數群組中，`group_replication_group_name` 指定為 UUID。

### 使用須知
<a name="mysql_rds_group_replication_advance_gtid-usage-notes"></a>

在主動-主動叢集中，若要讓資料庫執行個體加入群組，所有在新資料庫執行個體上執行的 GTID 交易都必須存在於叢集中的其他成員上。在少數情況下，若在執行個體加入群組之前執行交易，新的資料庫執行個體可能會有更多交易。在此情況下，您無法移除任何現有的交易，但您可以使用此程序，在群組中的其他資料庫執行個體上建立對應的預留位置 GTID。執行此操作前，請確認交易*不會影響複寫的資料*。

當您呼叫此程序時，將會以空白內容建立 `server_uuid:begin_id-end_id` 的 GTID 交易。為避免發生複寫問題，切勿在其他情況下使用此程序。

**重要**  
請避免在主動-主動叢集正常運作時呼叫此程序。除非您了解您建立的交易可能有何後果，否則請勿呼叫此程序。呼叫此程序可能會導致資料不一致。

### 範例
<a name="mysql_rds_group_replication_advance_gtid-examples"></a>

下列範例會在目前的資料庫執行個體上建立預留位置 GTID：

```
CALL mysql.rds_group_replication_advance_gtid({{5}}, {{6}}, '{{11111111-2222-3333-4444-555555555555}}');
```

## mysql.rds\_group\_replication\_create\_user
<a name="mysql_rds_group_replication_create_user"></a>

為資料庫執行個體上的群組複寫建立複寫使用者 `rdsgrprepladmin`。

### 語法
<a name="mysql_rds_group_replication_create_user-syntax"></a>

```
CALL mysql.rds_group_replication_create_user(
{{replication_user_password}}
);
```

### Parameters
<a name="mysql_rds_group_replication_create_user-parameters"></a>

 {{replication\_user\_password}}   
複寫使用者 `rdsgrprepladmin` 的密碼。

### 使用須知
<a name="mysql_rds_group_replication_create_user-usage-notes"></a>
+ 複寫使用者 `rdsgrprepladmin` 的密碼在主動-主動叢集中的所有資料庫執行個體上必須相同。
+ 這個 `rdsgrprepladmin` 使用者名稱會保留給群組複寫連線。其他使用者 (包括主要使用者) 都無法使用此使用者名稱。

### 範例
<a name="mysql_rds_group_replication_create_user-examples"></a>

下列範例會為資料庫執行個體上的群組複寫建立複寫使用者 `rdsgrprepladmin`。

```
CALL mysql.rds_group_replication_create_user('{{password}}');
```

## mysql.rds\_group\_replication\_set\_recovery\_channel
<a name="mysql_rds_group_replication_set_recovery_channel"></a>

為主動-主動叢集設定 `group_replication_recovery` 通道。此程序會使用保留的 `rdsgrprepladmin` 使用者來設定通道。

### 語法
<a name="mysql_rds_group_replication_set_recovery_channel-syntax"></a>

```
CALL mysql.rds_group_replication_set_recovery_channel(
{{replication_user_password}});
```

### Parameters
<a name="mysql_rds_group_replication_set_recovery_channel-parameters"></a>

 {{replication\_user\_password}}   
複寫使用者 `rdsgrprepladmin` 的密碼。

### 使用須知
<a name="mysql_rds_group_replication_set_recovery_channel-usage-notes"></a>

複寫使用者 `rdsgrprepladmin` 的密碼在主動-主動叢集中的所有資料庫執行個體上必須相同。對 `mysql.rds_group_replication_create_user` 的呼叫會指定密碼。

### 範例
<a name="mysql_rds_group_replication_set_recovery_channel-examples"></a>

下列範例會為主動-主動叢集設定 `group_replication_recovery` 通道：

```
CALL mysql.rds_group_replication_set_recovery_channel('{{password}}');
```

## mysql.rds\_group\_replication\_start
<a name="mysql_rds_group_replication_start"></a>

在目前的資料庫執行個體上啟動群組複寫。

### 語法
<a name="mysql_rds_group_replication_start-syntax"></a>

```
CALL mysql.rds_group_replication_start(
{{bootstrap}}
);
```

### Parameters
<a name="mysql_rds_group_replication_start-parameters"></a>

 {{引導}}   
指定要初始化新群組還是加入現有群組的值。`1` 會使用目前的資料庫執行個體初始化新群組。`0` 會連線至與資料庫執行個體相關聯的資料庫參數群組中的 `group_replication_group_seeds` 參數所定義的端點，藉以將目前的資料庫執行個體加入現有群組。

### 範例
<a name="mysql_rds_group_replication_start-examples"></a>

下列範例會使用目前的資料庫執行個體初始化新群組：

```
CALL mysql.rds_group_replication_start({{1}});
```

## mysql.rds\_group\_replication\_stop
<a name="mysql_rds_group_replication_stop"></a>

在目前的資料庫執行個體上停止群組複寫。

### 語法
<a name="mysql_rds_group_replication_stop-syntax"></a>

```
CALL mysql.rds_group_replication_stop();
```

### 使用須知
<a name="mysql_rds_group_replication_stop-usage-notes"></a>

在一個資料庫執行個體上停止複寫，並不會影響主動-主動叢集中的任何其他資料庫執行個體。