文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  升級群組複寫成員

20.8.3.2 升級群組複寫成員

本節說明升級群組成員所需的步驟。此程序是 第 20.8.3.3 節「群組複寫線上升級方法」中所述方法的一部分。升級群組成員的過程對所有方法而言都是相同的,並且會先說明。加入已升級成員的方式可能取決於您所遵循的方法,以及其他因素,例如群組是否以單主模式或多主模式運作。您使用就地或佈建方式升級伺服器執行個體的方式,不會影響此處所述的方法。

升級成員的過程包括將其從群組中移除,遵循您選擇的升級成員方法,然後將升級後的成員重新加入群組。在單主群組中升級成員的建議順序是先升級所有次要節點,然後最後升級主要節點。如果主要節點在次要節點之前升級,則會選擇使用較舊 MySQL 版本的新主要節點,但不需要此步驟。

若要升級群組成員

  • 將用戶端連線至群組成員並發出 STOP GROUP_REPLICATION。在繼續之前,請監控 replication_group_members 表格,確保成員的狀態為 OFFLINE

  • 停用群組複寫自動啟動,以便在升級後安全連線至成員並設定它,而不會透過設定 group_replication_start_on_boot=0 重新加入群組。

    重要

    如果升級後的成員具有 group_replication_start_on_boot=1,則它可能會在您執行 MySQL 升級程序之前重新加入群組,並可能導致問題。例如,如果升級失敗並且伺服器再次重新啟動,則可能已損壞的伺服器可能會嘗試加入群組。

  • 停止成員,例如使用 mysqladmin shutdownSHUTDOWN 陳述式。群組中的任何其他成員會繼續執行。

  • 使用就地或佈建方式升級成員。如需詳細資訊,請參閱 第 3 章《升級 MySQL。當重新啟動升級後的成員時,由於 group_replication_start_on_boot 設定為 0,因此群組複寫不會在執行個體上啟動,因此它不會重新加入群組。

  • 在成員上執行 MySQL 升級程序後,必須將 group_replication_start_on_boot 設定為 1,以確保在重新啟動後正確啟動群組複寫。重新啟動成員。

  • 連線至已升級的成員並發出 START GROUP_REPLICATION。這會將成員重新加入群組。群組複寫中繼資料已在升級後的伺服器上就緒,因此通常不需要重新設定群組複寫。伺服器必須趕上伺服器離線時群組處理的任何交易。一旦它趕上群組,它就會成為群組的線上成員。

    注意

    升級伺服器所需的時間越長,成員離線的時間就越長,因此伺服器在新增回群組時趕上的時間就越長。

當已升級的成員加入任何成員執行較早 MySQL 伺服器版本的群組時,已升級的成員會以 super_read_only=on 加入。這可確保在所有成員都執行較新版本之前,不會對升級後的成員進行任何寫入。在多主模式群組中,當升級成功完成且群組已準備好處理交易時,必須將預期作為可寫入主要節點的成員設定為讀寫模式。當群組的所有成員都已升級到相同的版本時,它們都會自動變回讀寫模式。