目錄
本章說明 MySQL 9.0 中的群組複製,以及如何安裝、配置和監控群組。MySQL 群組複製可讓您建立彈性、高可用性、容錯的複製拓撲。
群組可以在單主模式下運作,並自動選取主要伺服器,其中一次只有一台伺服器接受更新。或者,群組可以部署在多主模式中,其中所有伺服器都可以接受更新,即使這些更新同時發出也沒問題。
有一個內建的群組成員資格服務,可讓群組的檢視在任何給定時間點對所有伺服器保持一致和可用。伺服器可以離開和加入群組,並且會相應地更新檢視。有時,伺服器可能會意外離開群組,在這種情況下,失敗偵測機制會偵測到此情況,並通知群組檢視已變更。這一切都是自動化的。
群組複製保證資料庫服務持續可用。然而,務必了解,如果其中一個群組成員無法使用,則連線至該群組成員的用戶端必須使用連接器、負載平衡器、路由器或某種形式的中介軟體,重新導向或容錯移轉到群組中的其他伺服器。群組複製沒有內建的方法可以執行此操作。例如,請參閱 MySQL Router 9.0。
群組複製是以 MySQL 伺服器的外掛程式形式提供。您可以按照本章中的指示,在您要加入群組的每個伺服器實例上配置外掛程式、啟動群組,並監控和管理群組。部署 MySQL 伺服器實例群組的另一種方法是使用 InnoDB Cluster。
若要部署多個 MySQL 實例,您可以使用 InnoDB Cluster,讓您可以在 MySQL Shell 中輕鬆管理 MySQL 伺服器實例群組。InnoDB Cluster 將 MySQL 群組複製封裝在程式設計環境中,讓您可以輕鬆部署 MySQL 實例叢集以實現高可用性。此外,InnoDB Cluster 與 MySQL Router 無縫介接,讓您的應用程式可以連線至叢集,而無需編寫自己的容錯移轉程序。然而,對於不需要高可用性的類似使用案例,您可以使用 InnoDB ReplicaSet。MySQL Shell 的安裝指示可在此處找到 這裡。
本章的結構如下
第 20.1 節「群組複製背景」介紹群組以及群組複製的運作方式。
第 20.2 節「入門」說明如何配置多個 MySQL 伺服器實例以建立群組。
第 20.3 節〈需求與限制〉說明了群組複寫的架構和設定需求及限制。
第 20.4 節〈監控群組複寫〉說明如何監控群組。
第 20.5 節〈群組複寫操作〉說明如何操作群組。
第 20.6 節〈群組複寫安全性〉說明如何保護群組安全。
第 20.7 節〈群組複寫效能與疑難排解〉說明如何微調群組的效能。
第 20.8 節〈升級群組複寫〉說明如何升級群組。
第 20.9 節〈群組複寫變數〉是群組複寫專屬的系統變數參考。
第 20.10 節〈常見問題〉提供關於部署和操作群組複寫的一些技術問題的解答。