本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
下列預存程序會使用RDS適用於 My 的全域交易識別符 (GTIDs) 控制如何複寫交易SQL。如需使用 GTIDs RDS for My 的 進行複寫的詳細資訊SQL,請參閱 使用 GTID型複寫。
使用預存程序管理使用 設定的複寫使用者複寫時caching_sha2_password
,您必須透過指定 TLS來設定 SOURCE_SSL=1
。 caching_sha2_password
是 MySQL 8.4 RDS的預設身分驗證外掛程式。
mysql.rds_skip_transaction_with_gtid
略過在 MySQL 資料庫執行個體上具有指定全域交易識別符 (GTID) 的交易複寫。
當特定GTID交易已知會造成問題時,您可以使用此程序進行災難復原。使用此預存程序來略過有問題的交易。有問題的交易範例包括停用複寫、刪除重要資料或導致資料庫執行個體無法使用的交易。
語法
CALL mysql.rds_skip_transaction_with_gtid (
gtid_to_skip
);
參數
-
gtid_to_skip
-
要略過GTID的複寫交易的 。
使用須知
主要使用者必須執行 mysql.rds_skip_transaction_with_gtid
程序。
此程序支援 My 5RDS.SQL7 版本的所有 、RDSMySQL 8.0 版本的所有 ,以及 MySQL 8RDS.4 版本的所有 。
範例
下列範例會略過 交易的複寫GTID3E11FA47-71CA-11E1-9E33-C80AA9429562:23
。
CALL mysql.rds_skip_transaction_with_gtid('3E11FA47-71CA-11E1-9E33-C80AA9429562:23');
mysql.rds_start_replication_until_gtid
從 RDS for MySQL 資料庫執行個體 並在指定的全域交易識別符 () 之後立即停止複寫GTID。
語法
CALL mysql.rds_start_replication_until_gtid(gtid
);
參數
-
gtid
-
GTID 複寫之後要停止。
使用須知
主要使用者必須執行 mysql.rds_start_replication_until_gtid
程序。
此程序支援 My 5RDS.SQL7 版本的所有 、RDSMySQL 8.0 版本的所有 ,以及 MySQL 8RDS.4 版本的所有 。
您可以透過延遲複寫來使用此程序進行災難復原。若您已延遲複寫設定,您可使用此程序變更延遲的僅供讀取複本,並向前捲動到災難發生前的時間點。在此程序停止複寫後,您可使用 提升僅供讀取複本為獨立的資料庫執行個體 中的說明來提升該僅供讀取複本成為新的主要資料庫執行個體。
您可使用以下預存程序來設定延遲複寫:
當 gtid
參數指定了複本已經執行的交易時,複寫會立即停止。
範例
下列範例會啟動複寫並複寫變更,直到達到 GTID 為止3E11FA47-71CA-11E1-9E33-C80AA9429562:23
。
call mysql.rds_start_replication_until_gtid('3E11FA47-71CA-11E1-9E33-C80AA9429562:23');