本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用我的SQL僅供讀取複本
您可以在下面找到有關在 RDS for My 上使用僅供讀取複本的特定資訊SQL。如需僅供讀取複本的一般資訊及使用說明,請參閱 使用資料庫執行個體僅供讀取複本。
如需有關我的SQL僅供讀取複本的詳細資訊,請參閱下列主題。
使用 My 設定僅供讀取複本SQL
在 MySQL 資料庫執行個體可做為複寫來源之前,請務必在來源資料庫執行個體上啟用自動備份。若要這麼做,請將備份保留期設定為 0 以外的值。若僅供讀取複本能讓其他僅供讀取複本做為來源資料庫執行個體,則亦適用此要求。執行任何 My 版本的僅供讀取複本支援自動備份SQL。您可以根據 MySQL 資料庫執行個體的二進位日誌座標來設定複寫。
您可以在下列版本上使用全域交易識別符 (GTIDS) 設定複寫:
-
RDS 適用於 MySQL 5.7.44 版和更新的 5.7 版
-
RDS for MySQL 8.0.28 版和更新的 8.0 版
-
RDS 適用於 MySQL 8.4.3 版和更新的 8.4 版
如需詳細資訊,請參閱使用 GTID型複寫。
您可以從相同區域內的一個資料庫執行個體建立至多 15 個僅供讀取複本。若希望複寫作業順利運作,每個僅供讀取複本具備的運算和儲存資源數量應與來源資料庫執行個體相同。若您擴展來源資料庫執行個體,也要擴展僅供讀取複本。
RDS for MySQL 支援串聯僅供讀取複本。若要了解如何設定階層式僅供讀取複本,請參閱 將串聯僅供讀取複本與 RDS My 搭配使用 SQL。
您可以同時執行多個僅供讀取複本建立,並刪除參考相同來源資料庫執行個體的動作。執行這些動作時,請將每個來源執行個體的僅供讀取複本數目限制在 15 個之內。
My 資料庫執行個體的SQL僅供讀取複本無法使用比來源資料庫執行個體更低的資料庫引擎版本。
準備使用 MySQL 的 My 資料庫執行個體ISAM
如果您的 MySQL 資料庫執行個體使用非交易引擎,例如 MyISAM,您需要執行下列步驟,才能成功設定您的僅供讀取複本。請務必遵循以下步驟,才能確保僅供讀取複本的資料複本一致。然而,如果所有資料表均採用 InnoDB 等交易儲存引擎,就不需要進行這些步驟。
-
停止來源資料庫執行個體中非交易資料表上的所有資料處理語言 (DML) 和資料定義語言 (DDL) 操作,並等待它們完成。 SELECT陳述式可以繼續執行。
清空並鎖定來源資料庫執行個體中的資料表。
使用以下各節的其中一種方法來建立僅供讀取複本。
-
例如,使用
DescribeDBInstances
API操作檢查僅供讀取複本建立的進度。僅供讀取複本可供使用時,請解除鎖定來源資料庫執行個體的資料表,並恢復資料庫正常操作。