mysql 5.7 Group Replication

來源:互聯網
上載者:User

標籤:系統   cer   exec   tran   out   分享   ber   tab   where   

MySQL 組複製實現了基於複製協議的多主更新(單主模式)。

複製組由多個 server成員構成,並且組中的每個 server 成員可以獨立地執行事務。但所有讀寫(RW)事務只有在衝突檢測成功後才會提交。唯讀(RO)事務不需要在衝突檢測,可以立即提交。

對於任何 RW 事務,提交操作並不是由始發 server 單向決定的,而是由組來決定是否提交。準確地說,在始發 server 上,當事務準備好提交時,該 server 會廣播寫入值(已改變的行)和對應的寫入集(已更新的行的唯一識別碼)。然後會為該事務建立一個全域的順序。最終,這意味著所有 server 成員以相同的順序接收同一組事務。因此,所有 server 成員以相同的順序應用相同的更改,以確保組內一致。

組複製使您能夠根據在一組 server 中複製系統的狀態來建立具有冗餘的容錯系統。因此,只要它不是全部或多數 server 發生故障,即使有一些 server 故障,系統仍然可用,最多隻是效能和延展性降低,但它仍然可用。server 故障是孤立並且獨立的。它們由群組成員服務來監控,群組成員服務依賴於分布式故障檢測系統,其能夠在任何 server 自願地或由於意外停止而離開組時發出訊號。

他們是由一個分布式恢複程式來確保當有 server 加入組時,它們會自動更新組資訊到最新。並且多主更新確保了即使在單個伺服器故障的情況下也不會阻止更新,不必進行 server容錯移轉。因此,MySQL 組複製保證資料庫服務持續可用。

值得注意的一點是,儘管資料庫服務可用,但當有一個 server 崩潰時,串連到它的用戶端必須定向或容錯移轉到不同的 server。 這不是組複製要解決的問題;可以用mysql-router 或者其他中介軟體,比如mycat、altas等。

架構圖如下

限制

      表需要有主鍵
     採用GTID+binlog的方式進行複製
     複製事件校正   binlog_checksum=none
     Gap Locks不可用
 多主模式下限制
   隔離等級
  官網建議使用READ COMMITTED層級,除非應用程式依賴於REPLEATABLE READ,RC模式下沒有GAP LOCK,比較好支援Innodb本身的衝突檢測機制何組複製的內部分布式檢測機制一起協同工作。不支援SERIALIZABLE隔離等級
   外鍵
   不建議使用級聯外鍵,如果使用必須配置group_replication_enforce_update_everywhere_checks=ON
   DDL操作
   多主不支援同一對象不同執行個體的並發的DDL+DML混合操作 ,MySQL5.7上的DDL不是原子操作無法復原,因此group replication沒有對DDL做衝突檢測,可能導致資料不一致;應用或中介軟體要能夠把所有的DDL語句轉到同一台MySQL上去執行。

本次測試環境

192.168.20.201  redis01
192.168.20.202  redis02
192.168.20.203  redis03

編輯my.cnf

 

 

  

mysql 5.7 Group Replication

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.