文件首頁
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.1.2 群組複製使用案例

群組複製可讓您藉由將系統狀態複製到一組伺服器來建立具有備援功能的容錯系統。即使某些伺服器後續發生故障,只要不是全部或大部分,系統仍然可用。根據發生故障的伺服器數量,群組的效能或延展性可能會降低,但仍然可用。伺服器故障是獨立隔離的。它們由群組成員資格服務追蹤,該服務依賴分散式故障偵測器,該偵測器能夠在任何伺服器自願或因意外停止而離開群組時發出訊號。有一個分散式復原程序,可確保當伺服器加入群組時,它們會自動更新。不需要伺服器容錯移轉,而且多來源到處更新的性質可確保即使在單一伺服器故障的情況下也不會封鎖更新。總之,MySQL 群組複製保證資料庫服務持續可用。

務必了解,雖然資料庫服務可用,但在發生意外伺服器退出的情況下,連線至該伺服器的用戶端必須重新導向或容錯移轉至不同的伺服器。這不是群組複製嘗試解決的問題。連線器、負載平衡器、路由器或某種形式的中介軟體更適合處理此問題。例如,請參閱 MySQL Router 9.0

總之,MySQL 群組複製提供高度可用、高度彈性、可靠的 MySQL 服務。

提示

若要部署多個 MySQL 執行個體,您可以使用 InnoDB Cluster,這可讓您輕鬆在 MySQL Shell 中管理一組 MySQL 伺服器執行個體。InnoDB Cluster 將 MySQL 群組複製包裝在程式設計環境中,可讓您輕鬆部署 MySQL 執行個體叢集,以實現高可用性。此外,InnoDB Cluster 與 MySQL Router 無縫介接,可讓您的應用程式連線至叢集,而無需撰寫自己的容錯移轉程序。不過,對於不需要高可用性的類似使用案例,您可以使用 InnoDB ReplicaSet。MySQL Shell 的安裝指示可在此處找到。

使用案例範例

以下範例是群組複製的典型使用案例。

  • 彈性複製 - 需要非常流動的複製基礎架構的環境,其中伺服器的數量必須動態地成長或縮減,且副作用盡可能少。例如,雲端的資料庫服務。

  • 高度可用的分片 - 分片是一種用於實現寫入橫向擴展的熱門方法。使用 MySQL 群組複製來實作高度可用的分片,其中每個分片對應到一個複製群組。

  • 非同步來源-複本複製的替代方案 - 在某些情況下,使用單一來源伺服器會使其成為單一的爭用點。在某些情況下,寫入整個群組可能會更具延展性。

  • 自主系統 - 此外,您可以純粹為了內建在複製協定中的自動化(已在本章節和前幾章中說明)而部署 MySQL 群組複製。