MySQL性能優(yōu)化和高可用架構(gòu)實(shí)踐
定 價(jià):59 元
- 作者:宋立桓 著
- 出版時(shí)間:2020/7/1
- ISBN:9787302554172
- 出 版 社:清華大學(xué)出版社
- 中圖法分類:TP311.138SQ
- 頁(yè)碼:209
- 紙張:膠版紙
- 版次:1
- 開(kāi)本:16開(kāi)
互聯(lián)網(wǎng)公司里面幾乎很少有公司不用MySQL,國(guó)內(nèi)互聯(lián)網(wǎng)巨頭都在大規(guī)模使用MySQL。如果把MySQL比喻成數(shù)據(jù)庫(kù)界的一條巨龍,則性能優(yōu)化和高可用架構(gòu)設(shè)計(jì)實(shí)踐就是點(diǎn)睛之筆。
《MySQL性能優(yōu)化和高可用架構(gòu)實(shí)踐》將詳細(xì)講解MySQL5.7高可用和性能優(yōu)化技術(shù),細(xì)致梳理思路,并與真實(shí)生產(chǎn)案例相結(jié)合,通過(guò)原理闡述到實(shí)戰(zhàn)部署,幫助讀者將所學(xué)知識(shí)點(diǎn)運(yùn)用到實(shí)際工作中。
《MySQL性能優(yōu)化和高可用架構(gòu)實(shí)踐》分為13章,詳解MySQL5.7數(shù)據(jù)庫(kù)體系結(jié)構(gòu),InnoDB存儲(chǔ)引擎,MySQL事務(wù)和鎖,性能優(yōu)化,服務(wù)器全面優(yōu)化、性能監(jiān)控,以及MySQL主從復(fù)制、PXC、MHA、MGR、Keepalived+雙主復(fù)制等高可用集群架構(gòu)的設(shè)計(jì)與實(shí)踐過(guò)程,并介紹海量數(shù)據(jù)分庫(kù)分表和Mycat中間件的實(shí)戰(zhàn)操作。
《MySQL性能優(yōu)化和高可用架構(gòu)實(shí)踐》既適合有一定基礎(chǔ)的MySQL數(shù)據(jù)庫(kù)學(xué)習(xí)者、MySQL數(shù)據(jù)庫(kù)開(kāi)發(fā)人員和MySQL數(shù)據(jù)庫(kù)管理人員閱讀,同時(shí)也能作為高等院校和培訓(xùn)學(xué)校相關(guān)專業(yè)師生的參考用書。
本書詳解MySQL 5.7性能優(yōu)化和高可用技術(shù),細(xì)致梳理思路,并與真實(shí)生產(chǎn)案例相結(jié)合,通過(guò)原理闡述和實(shí)戰(zhàn)部署幫助讀者將所學(xué)知識(shí)點(diǎn)運(yùn)用到實(shí)際工作中。
數(shù)字化轉(zhuǎn)型開(kāi)始從IT時(shí)代進(jìn)入DT時(shí)代。面對(duì)大量的數(shù)據(jù)和業(yè)務(wù),更多的公司意識(shí)到了數(shù)據(jù)價(jià)值的重要性,如何管理和利用好數(shù)據(jù)變得越來(lái)越重要。MySQL是開(kāi)源數(shù)據(jù)庫(kù)方向的典型代表,以MySQL為主的開(kāi)源技術(shù)生態(tài)正變得越來(lái)越流行。它的發(fā)展歷程見(jiàn)證了互聯(lián)網(wǎng)的成長(zhǎng)。
相對(duì)于成熟的商業(yè)數(shù)據(jù)庫(kù),MySQL缺乏高質(zhì)量的技術(shù)文檔,我在接觸MySQL的過(guò)程中,也感覺(jué)市面上的相關(guān)圖書還存在一些不足,基礎(chǔ)運(yùn)維工作(安裝部署、備份恢復(fù)等)的內(nèi)容比較多,而高可用架構(gòu)設(shè)計(jì)和性能優(yōu)化方面的圖書比較少,技術(shù)人員也需要技能提高升級(jí)。
說(shuō)到寫書的緣由,我從國(guó)企大膽走出來(lái),去了知名外企工作,從外企出來(lái)后也做過(guò)獨(dú)立顧問(wèn)和自由講師。人到中年的時(shí)候,獨(dú)自一人求職進(jìn)互聯(lián)網(wǎng)大廠做架構(gòu)師,一路走來(lái),才發(fā)現(xiàn)克服中年危機(jī)的秘訣就是十六個(gè)字“不忘初心,永不止步,銳意進(jìn)取,砥礪前行”。雖然寫書的過(guò)程著實(shí)是一件很辛苦的事情,但還是堅(jiān)持了下來(lái)。寫書就是一種記憶打卡,不但能提升自我,而且能夠幫助到別人。關(guān)于本書
目前生產(chǎn)環(huán)境中主流的版本是MySQL5.7,本書知識(shí)結(jié)構(gòu)主要包括MySQL5.7性能優(yōu)化和高可用架構(gòu)設(shè)計(jì)實(shí)踐兩方面。全書共13章,內(nèi)容覆蓋MySQL5.7數(shù)據(jù)庫(kù)體系結(jié)構(gòu)、InnoDB存儲(chǔ)引擎、MySQL事務(wù)和鎖、性能優(yōu)化、服務(wù)器全面優(yōu)化、性能監(jiān)控、主從復(fù)制,以及PXC集群、MHA自動(dòng)故障轉(zhuǎn)移群集、MGR組復(fù)制、Keepalived+雙主復(fù)制等高可用集群架構(gòu)的設(shè)計(jì)與實(shí)踐,還有針對(duì)海量數(shù)據(jù)進(jìn)行分庫(kù)分表和Mycat中間件介紹和實(shí)戰(zhàn)操作。全書秉承“實(shí)踐為主、理論夠用”的原則,將實(shí)戰(zhàn)操作融入各個(gè)知識(shí)點(diǎn)的講解之中。
宋立桓,IT資深技術(shù)專家、布道師,主要負(fù)責(zé)為企業(yè)客戶提供顧問(wèn)咨詢、培訓(xùn)和方案設(shè)計(jì)服務(wù)。目前是騰訊云架構(gòu)師,專注于云計(jì)算、大數(shù)據(jù)和人工智能,對(duì)區(qū)塊鏈的相關(guān)技術(shù)也有深入的研究。著有圖書《Cloudera Hadoop大數(shù)據(jù)平臺(tái)實(shí)戰(zhàn)指南》和《AI制勝:機(jī)器學(xué)習(xí)極簡(jiǎn)入門》。
第1章 MySQL架構(gòu)介紹
1.1 MySQL簡(jiǎn)介
1.2 MySQL主流的分支版本
1.3 MySQL存儲(chǔ)引擎
1.4 MySQL邏輯架構(gòu)
1.5 MySQL物理文件體系結(jié)構(gòu)
第2章 InnoDB存儲(chǔ)引擎體系結(jié)構(gòu)
2.1 緩沖池
2.2 change buffer
2.3 自適應(yīng)哈希索引
2.4 redo log buffer
2.5 double write
2.6 InnoDB后臺(tái)線程
2.6.1 InnoDB主線程
2.6.2 InnoDB后臺(tái)I/O線程
2.6.3 InnoDB臟頁(yè)刷新線程
2.6.4 InnoDB purge線程
2.7 redo log
2.8 undo log
2.9 Query Cache
第3章 MySQL事務(wù)和鎖
3.1 MySQL事務(wù)概述
3.2 MySQL事務(wù)隔離級(jí)別
3.3 InnoDB的鎖機(jī)制介紹
3.4 鎖等待和死鎖
3.4.1 鎖等待
3.4.2 死鎖
3.5 鎖問(wèn)題的監(jiān)控
第4章 SQL語(yǔ)句性能優(yōu)化
4.1 MySQL查詢過(guò)程
4.2 創(chuàng)建高性能索引
4.2.1 索引的原理
4.2.2 聚集索引和輔助索引
4.2.3 Index Condition Pushdown
4.2.4 Multi-Range Read Optimization
4.2.5 Batched Key Access
4.3 慢SQL語(yǔ)句優(yōu)化思路
4.3.1 抓取慢SQL語(yǔ)句
4.3.2 利用explain分析查詢語(yǔ)句
4.3.3 利用show profiles分析慢SQL語(yǔ)句
4.4 索引使用的原則及案例分析
4.4.1 索引使用的原則
4.4.2 沒(méi)有使用到索引的案例分析
第5章 MySQL服務(wù)器全面優(yōu)化
5.1 MySQL 5.7 InnoDB存儲(chǔ)引擎增強(qiáng)特性
5.2 硬件層面優(yōu)化
5.3 Linux操作系統(tǒng)層面優(yōu)化
5.4 MySQL配置參數(shù)優(yōu)化
5.5 MySQL設(shè)計(jì)規(guī)范
第6章 MySQL性能監(jiān)控
6.1 監(jiān)控圖表的指導(dǎo)意義
6.2 Lepus數(shù)據(jù)庫(kù)監(jiān)控系統(tǒng)實(shí)戰(zhàn)
6.2.1 Lepus數(shù)據(jù)庫(kù)監(jiān)控系統(tǒng)簡(jiǎn)介
6.2.2 Lepus數(shù)據(jù)庫(kù)監(jiān)控系統(tǒng)部署
6.2.3 監(jiān)控MySQL服務(wù)器
6.2.4 Lepus慢查詢分析平臺(tái)
第7章 MySQL主從復(fù)制詳解
7.1 主從復(fù)制的概念和用途
7.2 主從復(fù)制的原理及過(guò)程描述
7.3 主從復(fù)制的重點(diǎn)參數(shù)解析
7.4 主從復(fù)制的部署架構(gòu)
7.5 異步復(fù)制
7.6 半同步復(fù)制
7.6.1 半同步復(fù)制概念和原理
7.6.2 半同步復(fù)制配置
7.7 GTID復(fù)制
7.7.1 GTID特性和復(fù)制原理介紹
7.7.2 GTID復(fù)制配置實(shí)戰(zhàn)
7.8 多源復(fù)制
7.9 主從復(fù)制故障處理
7.10 主從延遲解決方案和并行復(fù)制
第8章 PXC高可用解決方案
8.1 PXC概述
8.2 PXC的實(shí)現(xiàn)原理
8.3 PXC集群的優(yōu)缺點(diǎn)
8.4 PXC中的重要概念
8.5 PXC集群部署實(shí)戰(zhàn)
8.6 PXC集群狀態(tài)監(jiān)控
8.7 PXC集群的適用場(chǎng)景和維護(hù)總結(jié)
第9章 基于MHA實(shí)現(xiàn)的MySQL自動(dòng)故障轉(zhuǎn)移集群
9.1 MHA簡(jiǎn)介
9.2 MHA原理
9.3 MHA的優(yōu)缺點(diǎn)
9.4 MHA工具包的功能
9.5 MHA集群部署實(shí)戰(zhàn)
第10章 MySQL Group Replication
10.1 MGR概述
10.2 MGR基本原理
10.3 MGR服務(wù)模式
10.3.1 單主模式
10.3.2 多主模式
10.4 MGR的注意事項(xiàng)
10.5 MGR部署實(shí)戰(zhàn)
10.6 MGR的監(jiān)控
10.7 MGR的主節(jié)點(diǎn)故障無(wú)感知切換
第11章 Keepalived+雙主復(fù)制的高可用架構(gòu)
11.1 Keepalived+雙主架構(gòu)介紹
11.2 Keepalived介紹
11.3 雙主+Keepalived集群搭建
第12章 數(shù)據(jù)庫(kù)分庫(kù)分表與中間件介紹
12.1 關(guān)系數(shù)據(jù)庫(kù)的架構(gòu)演變
12.1.1 數(shù)據(jù)庫(kù)讀寫分離
12.1.2 數(shù)據(jù)庫(kù)垂直分庫(kù)
12.1.3 數(shù)據(jù)庫(kù)水平分庫(kù)與水平分表
12.2 分庫(kù)分表帶來(lái)的影響
12.3 常見(jiàn)的分庫(kù)分表中間件介紹
第13章 Mycat中間件詳解
13.1 Mycat簡(jiǎn)介
13.2 Mycat核心概念
13.3 Mycat安裝部署
13.4 Mycat配置文件詳解
13.4.1 schema.xml
13.4.2 server.xml
13.4.3 rule.xml
13.5 Mycat分庫(kù)分表實(shí)戰(zhàn)
13.6 Mycat讀寫分離實(shí)戰(zhàn)