本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
您可以略過僅供讀取複本上的錯誤,前提是此錯誤導致僅供讀取複本停止回應,而且此錯誤不會影響資料的完整性。
注意
首先驗證是否可以安全地略過有問題的錯誤。在 MySQL 公用程式中,連線至僅供讀取複本,並執行下列 MySQL 命令。
SHOW REPLICA STATUS\G
如需傳回值的相關資訊,請參閱我的SQL文件
先前使用的 和 MySQL 版本SHOW SLAVE STATUS
,而非 SHOW REPLICA STATUS
。如果您使用的是 8.0.23 之前的 MySQL 版本,請使用 SHOW SLAVE STATUS
。
您可採用以下方式,略過僅供讀取複本上的錯誤。
呼叫 mysql.rds_skip_repl_error 程序
Amazon RDS提供預存程序,您可以呼叫 來略過僅供讀取複本上的錯誤。首先連接到您的僅供讀取複本,然後發出適當的命令,如下所示。如需詳細資訊,請參閱連線至 MySQL 資料庫執行個體。
若要略過錯誤,請發出下列命令:
CALL mysql.rds_skip_repl_error;
如果您在來源資料庫執行個體上,或在未發現複寫錯誤的僅供讀取複本上執行此命令,則此命令沒有效用。
如需詳細資訊,例如支援 的 MySQL 版本mysql.rds_skip_repl_error
,請參閱 mysql.rds_skip_repl_error。
重要
如果您嘗試呼叫 mysql.rds_skip_repl_error
並遇到下列錯誤:ERROR 1305 (42000): PROCEDURE mysql.rds_skip_repl_error does not exist
,請將 MySQL 資料庫執行個體升級至最新的次要版本,或 中列出的其中一個最低次要版本mysql.rds_skip_repl_error。
設定 slave_skip_errors 參數
若要略過一或多個錯誤,您可以在僅供讀取複本上設定 slave_skip_errors
靜態參數。您可以設定此參數,以略過一或多個特定的複寫錯誤碼。目前,您只能RDS為 MySQL 5.7 資料庫執行個體設定此參數。在變更此參數的設定之後,請務必重新啟動您的資料庫執行個體,新設定才會生效。如需有關設定此參數的資訊,請參閱我的SQL文件
建議您在個別的資料庫參數群組中設定此參數。您只能將此資料庫參數群組與需要略過錯誤的僅供讀取複本建立關聯。遵循此最佳實務可減少對其他資料庫執行個體和僅供讀取複本的潛在影響。
重要
針對此參數設定非預設值可能會導致複寫不一致。只有在您已用盡其他選項來解決問題,並確定對僅供讀取複本資料產生潛在影響時,才會將此參數設定為非預設值。