使用 GTID型複寫 - Amazon Relational Database Service

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

使用 GTID型複寫

下列內容說明如何在 Amazon RDS for MySQL 資料庫執行個體之間使用全域交易識別符 (GTIDs) 搭配二進位日誌 (binlog) 複寫。

如果您使用 binlog 複寫,而且不熟悉使用 My GTID的 型複寫SQL,請參閱 MySQL 文件中的使用全域交易識別符複寫

GTID下列版本支援 型複寫:

  • All RDS for MySQL 8.4 版本

  • All RDS for MySQL 8.0 版本

  • All RDS for MySQL 5.7 版本

複寫組態中的所有 MySQL 資料庫執行個體必須符合此版本需求。

全域交易識別符概觀 (GTIDs)

全域交易識別符 (GTIDs) 是為遞交的 MySQL 交易產生的唯一識別符。您可以使用 GTIDs讓 Binlog 複寫更簡單,也更容易進行故障診斷。

我的SQL 使用兩種不同類型的交易進行 binlog 複寫:

  • GTID 交易 – 由 識別的交易GTID。

  • 匿名交易 – 未GTID指派 的交易。

在複寫組態中, 在所有資料庫執行個體中GTIDs都是唯一的。 GTIDs簡化複寫組態,因為當您使用它們時,您不必參考日誌檔案位置。 GTIDs也可讓您更輕鬆地追蹤複寫的交易,並判斷來源執行個體和複本是否一致。

您可以使用 GTID型複寫,將資料複寫為 RDS for MySQL read 複本。您可以在建立新的僅供讀取複本時設定 GTID型複寫,也可以將現有的僅供讀取複本轉換為使用 GTID型複寫。

您也可以在延遲複寫組態中使用 GTID型複寫搭配 RDS for MySQL。如需詳細資訊,請參閱使用 My 設定延遲複寫SQL

GTID以 為基礎的複寫參數

使用下列參數來設定 GTID型複寫。

參數 有效值 描述

gtid_mode

OFF, OFF_PERMISSIVE, ON_PERMISSIVE, ON

OFF 指定新交易是匿名交易 (即沒有 GTIDs),且交易必須匿名才能複寫。

OFF_PERMISSIVE 指定新交易是匿名交易,但全部交易都可以複寫。

ON_PERMISSIVE 指定新的交易是GTID交易,但所有交易都可以複寫。

ON 指定新交易是GTID交易,交易必須是要複寫GTID的交易。

enforce_gtid_consistency

OFF, ON, WARN

OFF 允許交易違反GTID一致性。

ON 可防止交易違反GTID一致性。

WARN 允許交易違反GTID一致性,但在發生違規時產生警告。

注意

在 中 AWS Management Console, gtid_mode 參數會顯示為 gtid-mode

對於 GTID型複寫,請針對資料庫執行個體或僅供讀取複本的參數群組使用這些設定:

  • ON 和 RDS ON_PERMISSIVE僅適用於從資料庫執行個體傳出的複寫。這兩個值都會讓您的RDS資料庫執行個體GTIDs用於複寫的交易。 ON 要求目標資料庫也使用 GTID型複寫。 ON_PERMISSIVE會在目標資料庫上選用 GTID型複寫。

  • OFF_PERMISSIVE如果設定 ,表示您的RDS資料庫執行個體可以接受來源資料庫的傳入複寫。無論來源資料庫是否使用 GTID型複寫,他們都可以這樣做。

  • OFF如果設定 ,表示您的RDS資料庫執行個體只接受來自未使用 GTID型複寫的來源資料庫的傳入複寫。

如需參數群組的詳細資訊,請參閱Amazon RDS 的參數群組