- MySQL高可用實踐
- 王雪迎
- 671字
- 2021-03-26 23:06:27
本書內容
全書共16章,從復制、中間件、集群、存儲、優化五個方面介紹MySQL高可用技術。
第1~6章講述MySQL的復制,是MySQL高可用實現的基礎。除了包括原生的異步復制、插件實現的半同步復制,以及MySQL 5.7版本引入的組復制等基本復制技術外,還討論了幾種常見的復制拓撲,以及各種復制的性能對比。在實際應用中,GTID、部分復制、延遲復制都是針對不同場景下常用的與復制密切相關的技術,這部分內容會分別用單獨的章節加以說明。
第7~12章給出如何使用中間件構建MySQL高可用環境。具體包括MySQL自己的中間件產品Router和Fabric,以及被廣泛采用的MMM、MHA、Keepalived+LVS、Heartbeat+HAProxy等第三方MySQL高可用解決方案。每種產品使用一章的篇幅進行講解。
第13~14章介紹兩種MySQL集群:InnoDB Cluster和Galera Cluster。其中InnoDB Cluster是MySQL官方推出的集群產品,而Galera Cluster是包含在MariaDB中的MySQL多主集群。
第15章講述利用DRBD技術實現MySQL高可用。前三部分介紹的MySQL高可用解決方案都是基于MySQL自帶的各種復制技術。DRBD的實現方式則完全不同,它本身與MySQL復制毫無關系,而是一個用軟件實現的鏡像塊設備內容的存儲復制解決方案。
在全書最后的第16章,引入四個MySQL高可用環境下的優化案例,分別是:快速生成數字輔助表;將MySQL去重優化到極致;重疊時間段問題之算法優化;快速安全刪除大表。嚴格來說,本章內容并不特指高可用環境下的優化。但這些案例都取自我工作中的真實需求,具有一定的代表性和實用性,既有利于讀者借鑒解決實際問題,同時在某種程度上也能增加閱讀的趣味。
為力求嚴謹,書中所涉及產品或技術的知識絕大部分來源于相應的官方文檔。正如Linus的那句話:“Talk is cheap,show me the code”,對于每一個過程或結論,都配有詳細的實驗步驟,用實例輔以佐證,幫助讀者加深理解。
