本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 GTID 式複寫
接下來,您可以了解如何在 Amazon RDS for MySQL 資料庫執行個體間 搭配使用全域交易識別符 (GTID) 與二進位日誌 (binlog) 複寫。
如果您是使用 binlog 複寫,且不熟悉如何在 MySQL 使用 GTID 式複寫,則可參閱 MySQL 文件中的使用全域交易識別符的複寫
下列版本支援 GTID 式複寫:
-
所有 RDS for MySQL 8.4 版本
-
所有 RDS for MySQL 8.0 版本
-
所有 RDS for MySQL 5.7 版本
複寫組態中的所有 MySQL 資料庫執行個體都必須符合此版本要求。
主題
全域交易識別碼 (GTID) 的概觀
「全域交易識別符 (GTID)」是系統為遞交的 MySQL 交易所產生的唯一識別符。GTID 能讓 binlog 複寫的操作更簡單,也更容易進行故障診斷。
進行 binlog 複寫作業時,MySQL 會使用兩種不同類型的交易:
-
GTID 交易 – 透過 GTID 識別的交易。
-
匿名交易 – 未指派 GTID 的交易。
在複寫組態中,全部的資料庫執行個體都有各自不同的 GTID。GTID 可簡化複寫組態,因為使用時不需要參照日誌檔案位置。GTID 也使得追蹤複寫的交易更容易,而且可決定來源執行個體和複本是否一致。
您可使用 GTID 式複寫來複寫 RDS for MySQL 僅供讀取複本的資料。您可在建立新的僅供讀取複本時設定 GTID 式複寫,也可轉換現有的僅供讀取複本以使用 GTID 式複寫。
如果是 RDS for MySQL,您也可以在延遲的複寫組態中使用 GTID 式複寫。如需詳細資訊,請參閱 透過 MySQL 設定延遲複寫。
GTID 式複寫的參數
使用以下參數來設定 GTID 式複寫。
| 參數 | 有效值 | 描述 |
|---|---|---|
|
|
|
|
|
|
|
|
注意
在 AWS 管理主控台 中,gtid_mode 參數會顯示為 gtid-mode。
進行 GTID 式複寫時,您可以使用下列設定來配置資料庫執行個體或僅供讀取複本的參數群組:
-
ON和ON_PERMISSIVE僅適用於從 RDS 資料庫執行個體的傳出複寫作業。這兩個值都會導致 RDS 資料庫執行個體使用 GTID 以供複寫的交易使用。ON要求目標資料庫也使用 GTID 式複寫。ON_PERMISSIVE使 GTID 式複寫可在目標資料庫上選用。 -
若設定
OFF_PERMISSIVE,表示 RDS 資料庫執行個體可接受來源資料庫的傳入複寫作業。無論來源資料庫是否使用 GTID 式複寫,皆可進行。 -
若設定
OFF,表示唯有來源資料庫未使用 GTID 式複寫的情況下,RDS 資料庫執行個體才能接受來自該資料庫的傳入複寫作業。
如需參數群組的詳細資訊,請參閱Amazon RDS 的參數群組。