文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美國信紙) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  設定分散式復原

20.5.4.3 設定分散式復原

可以設定群組複寫分散式復原程序的多個層面,以符合您的系統需求。

連線嘗試次數

對於從二進位記錄檔進行狀態傳輸,群組複寫會限制加入成員在嘗試從捐贈者集區連線至捐贈者時的嘗試次數。如果達到連線重試限制而未成功連線,分散式復原程序將終止並產生錯誤。請注意,此限制指定加入成員嘗試連線至捐贈者的總次數。例如,如果有 2 個群組成員是適合的捐贈者,且連線重試限制設定為 4,則加入成員會在達到限制之前,嘗試連線至每個捐贈者 2 次。

預設的連線重試限制為 10。您可以使用 group_replication_recovery_retry_count 系統變數來設定此設定。下列命令會將連線至捐贈者的最大嘗試次數設定為 5

mysql> SET GLOBAL group_replication_recovery_retry_count= 5;

對於遠端複製作業,此限制不適用。群組複寫在開始嘗試從二進位記錄檔進行狀態傳輸之前,只會對每個適合複製的捐贈者進行一次連線嘗試。

連線嘗試的睡眠間隔

對於從二進位記錄檔進行狀態傳輸,group_replication_recovery_reconnect_interval 系統變數會定義分散式復原程序在捐贈者連線嘗試之間應睡眠多久。請注意,分散式復原並非在每次捐贈者連線嘗試後都睡眠。由於加入成員正在連線至不同的伺服器,而不是重複連線至同一伺服器,因此可以假設影響伺服器 A 的問題不會影響伺服器 B。因此,分散式復原只會在瀏覽過所有可能的捐贈者之後才會暫停。在加入群組的伺服器嘗試連線至群組中每個適合的捐贈者一次後,分散式復原程序會睡眠 group_replication_recovery_reconnect_interval 系統變數設定的秒數。例如,如果有 2 個群組成員是適合的捐贈者,且連線重試限制設定為 4,則加入成員會嘗試連線至每個捐贈者一次,然後睡眠連線重試間隔時間,然後再嘗試連線至每個捐贈者一次,然後才達到限制。

預設的連線重試間隔為 60 秒,而且您可以動態變更此值。下列命令會將分散式復原捐贈者連線重試間隔設定為 120 秒

mysql> SET GLOBAL group_replication_recovery_reconnect_interval= 120;

對於遠端複製作業,此間隔不適用。群組複寫在開始嘗試從二進位記錄檔進行狀態傳輸之前,只會對每個適合複製的捐贈者進行一次連線嘗試。

將加入成員標示為線上

當分散式復原已成功完成從捐贈者到加入成員的狀態傳輸時,可以將加入成員標示為在群組中為線上,並準備好參與。這會在新的成員收到並套用加入群組之前錯過的所有交易後完成。