

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

# Aurora 與 MySQL 之間或 Aurora 與另一個 Aurora 資料庫叢集之間的複寫 (二進位複寫)
<a name="AuroraMySQL.Replication.MySQL"></a><a name="binlog_replication"></a><a name="binlog"></a>

因為 Amazon Aurora MySQL 與 MySQL 相容，您可以設定 MySQL 資料庫與 Amazon Aurora MySQL 資料庫叢集之間的複寫。這種類型的複寫使用 MySQL 二進位記錄複寫，也稱為 *binlog 複寫*。如果您使用二進位複寫搭配 Aurora，我們建議您的 MySQL 資料庫執行 5.5 版或更新版本。您可以設定複寫，其中您的 Aurora MySQL 資料庫叢集是複寫來源或複本。您可以使用 Amazon RDS MySQL 資料庫執行個體、Amazon RDS 外部 MySQL 資料庫或其他 Aurora MySQL 資料庫叢集進行複寫。

**注意**  
您無法對特定類型的 Aurora 資料庫叢集使用 Binlog 複寫。特別是 Binlog 複寫不適用於 Aurora Serverless v1 叢集。如果 `SHOW MASTER STATUS` 和 `SHOW SLAVE STATUS` (Aurora MySQL 第 2 版) 或 `SHOW REPLICA STATUS` (Aurora MySQL 第 3 版) 陳述式未傳回任何輸出，請檢查您使用的叢集是否支援 binlog 複寫。

您也可以在另一個 AWS 區域中使用 RDS for MySQL 資料庫執行個體或 Aurora MySQL 資料庫叢集來進行複寫。當您跨 執行複寫時 AWS 區域，請確定您的資料庫叢集和資料庫執行個體可公開存取。如果 Aurora MySQL 資料庫叢集位於 VPC 的私有子網路中，請在 AWS 區域之間使用 VPC 對等互連。如需詳細資訊，請參閱[由不同 VPC 中的 EC2 叢集存取 VPC 中的資料庫執行個體](USER_VPC.Scenarios.md#USER_VPC.Scenario3)。

如果您想要在 Aurora MySQL 資料庫叢集和另一個 Aurora MySQL 資料庫叢集之間設定複寫 AWS 區域，您可以在 AWS 區域 與來源資料庫叢集不同的 中建立 Aurora MySQL 資料庫叢集做為僅供讀取複本。如需詳細資訊，請參閱[跨 複寫 Amazon Aurora MySQL 資料庫叢集 AWS 區域](AuroraMySQL.Replication.CrossRegion.md)。

在 Aurora MySQL 第 2 版本和第 3 版，您可以在 Aurora MySQL 與外部資源之間進行複寫，或是使用全域交易識別碼 (GTIDs) 的目標進行複寫。確保資料庫叢集 Aurora MySQL 中GTID 相關的參數，設定為相容外部資料庫的狀態。若要了解如何操作，請參閱 [使用 GTID 式複寫](mysql-replication-gtid.md)。在 Aurora MySQL 3.01 版及更新版本中，您可以選擇如何將 GTID 指派給從不使用 GTID 的來源複寫的交易。如需控制該設定之預存程序的相關資訊，請參閱 [mysql.rds\_assign\_gtids\_to\_anonymous\_transactions (Aurora MySQL 第 3 版)](mysql-stored-proc-gtid.md#mysql_assign_gtids_to_anonymous_transactions)。

**警告**  
 在 Aurora MySQL 與 MySQL 之間進行複寫時，請確定您僅使用 InnoDB 資料表。如果有您想要複寫的 MyISAM 資料表，您可以在使用下列命令設定複寫之前，將它們轉換為 InnoDB。  

```
alter table <schema>.<table_name> engine=innodb, algorithm=copy;
```

在下列各節中，設定複寫、停止複寫、擴展資料庫的讀取、最佳化 binlog 複寫，以及設定增強型 binlog。

**Topics**
+ [設定 Aurora MySQL 的二進位日誌複寫](AuroraMySQL.Replication.MySQL.SettingUp.md)
+ [停止 Aurora MySQL 的二進位日誌複寫](AuroraMySQL.Replication.MySQL.Stopping.md)
+ [使用 Amazon Aurora 為 MySQL 資料庫擴展讀取](AuroraMySQL.Replication.ReadScaling.md)
+ [最佳化 Aurora MySQL 的二進位日誌複寫](binlog-optimization.md)
+ [設定 Aurora MySQL 的增強型 binlog](AuroraMySQL.Enhanced.binlog.md)