MySQL 9.0 版本資訊
您可以使用 STOP REPLICA
和 START REPLICA
陳述式來停止和啟動副本上的複寫。
若要停止處理來自來源的二進制日誌,請使用 STOP REPLICA
mysql> STOP REPLICA;
當複寫停止時,複寫 I/O (接收器) 執行緒會停止從來源二進制日誌讀取事件並將其寫入中繼日誌,而 SQL 執行緒會停止從中繼日誌讀取事件並執行它們。您可以透過指定執行緒類型來個別暫停 I/O (接收器) 或 SQL (應用程式) 執行緒
mysql> STOP REPLICA IO_THREAD;
mysql> STOP REPLICA SQL_THREAD;
若要再次開始執行,請使用 START REPLICA
陳述式
mysql> START REPLICA;
若要啟動特定執行緒,請指定執行緒類型
mysql> START REPLICA IO_THREAD;
mysql> START REPLICA SQL_THREAD;
對於僅透過處理來自來源的事件來執行更新的副本,如果您想要執行備份或其他任務,則僅停止 SQL 執行緒可能會很有用。I/O (接收器) 執行緒會繼續從來源讀取事件,但不會執行它們。這使得當您重新啟動 SQL (應用程式) 執行緒時,副本更容易趕上進度。
僅停止接收器執行緒可讓套用器執行緒執行中繼日誌中的事件,直到中繼日誌結束。當您想要暫停執行以趕上已從來源接收的事件時,或者當您想要在複本上執行管理,同時確保它已處理完特定點的所有更新時,這會很有用。此方法也可用於在您於來源上進行管理時,暫停複本上的事件接收。停止接收器執行緒但允許套用器執行緒執行,有助於確保當再次啟動複製時,不會有大量待執行的事件積壓。